$(document).ready(function(){
$("button").click(func(){
newfunc();
});
});
我已经看到这是由未转义的引号引起的......但我只是试图从网上复制一个教程。我不知道为什么我会在这么简单的代码上得到这个错误。
答案 0 :(得分:1)
您应该将func
更改为function
。在click方法中,您必须传递回调函数。如果您之前声明了一个函数,那么传递一个对该函数的引用。 Otherwiser传递一个像下面这样的匿名函数,并在其内部定义,单击按钮时要执行的内容。
$(document).ready(function(){
$("button").click(function(){
newfunc();
});
});
顺便说一下可能,您还需要更改选择器$("button")
。如果该按钮具有特定ID,例如buttonId
,则使用此:$("#buttonId")
。如果按钮具有特定类,例如js-button
,则使用此:$(".js-button")
答案 1 :(得分:0)
$(document).ready(function(){
$("button").click(function(){
newfunc();
});
});
func
应为function
,点击后执行function()
。
答案 2 :(得分:0)
你只是语法错误;如果您使用func
,则不会声明它的正文,这里是
考虑一下
var func = function(){};
//RIGHT
$("button").click(func); //callback function
//RIGHT
$("button").click(function func(){}); //we just creating new named function, named callback
//RIGHT
$("button").click(function(){}); //anonymous callback function
//WRONG
$("button").click(func(){}); //anonymous callback function
虽然答案很简单,但这里也是演示
$(document).ready(function(){
function newfunc(elem){
$(elem).css('background', 'red');
}
$("button").click(function(){
newfunc(this);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>click me</button>