Javascript大师,看看这段代码:
<button onclick="handler()">ClickMe</button>
<script>
function handler() {
alert("clicked");
}
</script>
Run Code Online (Sandbox Code Playgroud)
为什么onclick事件应该用()onclick ="handler()"分配给handler?在这种情况下,会调用警报.但是根据描述为类似问题的回答的逻辑/sf/answers/227293111/ onclick分配给函数处理程序的结果,而不是自己运行.我相信指定onclick功能它应该是这样的
onclick="handler",
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,不会调用警报.为什么?
我正在尝试创建一个简单的计算器,当单击一个按钮时,它的值显示在文本字段中,按钮"C"应该清除文本字段但是它的onclick ="clear()"不起作用?
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Calculator</title>
<style>
#button{
padding: 10px;
}
</style>
<script>
function fill(val){
document.getElementById("field").value+=val;
}
function clear(){
document.getElementById("field").value="";
}
</script>
</head>
<body>
<form>
<table>
<tr><input type="text" name="field" id="field" size="8"/></tr>
<%! int k = 1; %>
<% for(int i=0;i<3;i++){ %>
<tr> <%
for(int j=0;j<3;j++){ %>
<td><input type="button" id="button" onclick="fill(this.value)" value="<%=k++%>" /></td>
<% } %>
</tr>
<% } %>
<tr>
<!--here onclick="clear()" is not working?? -->
<td><input type="button" id="button" value="C" onclick="clear()"/></td>
<td><input …Run Code Online (Sandbox Code Playgroud) 我编写了一个函数search,希望单击链接时会调用该函数,如下面的代码片段所示:
<script>
function search() {
console.log('Searching');
}
</script>
<a href="#" onclick="search();">Click here</a>Run Code Online (Sandbox Code Playgroud)
但是,该代码无法按我预期的方式工作,当单击链接时会导致此错误(在Chrome中):
未捕获的TypeError:搜索不是函数
我尝试记录日志search以查看为什么引发了错误:
<a href="#" onclick="console.log(search)">Click here</a>
Run Code Online (Sandbox Code Playgroud)
<a href="#" onclick="console.log(search)">Click here</a>
Run Code Online (Sandbox Code Playgroud)
这次,每次单击链接时,控制台都会记录一个空字符串。令我感到困惑的是,search实际上它在其他地方定义为空字符串,这使我的函数定义毫无用处。
所以我想知道单击事件被触发时发生什么情况,以及何时search定义?
我点击 td 时出错。为什么?
function ch() {
console.log("cliked")
}Run Code Online (Sandbox Code Playgroud)
<table>
<tr>
<td onclick='ch()'>
click on td
</td>
</tr>
</table>
<div onclick="ch()">click on div</div>Run Code Online (Sandbox Code Playgroud)