Jquery 参数列表后缺少{after
这是缺少分号或卷曲括号或什么,我无法找到在哪里或如何 任何关于如何调试此类问题的建议都会有所帮助。我在firebug告诉我的行中添加了一条建议,但它仍然不起作用,也没有意义Jquery 参数列表后缺少{after,jquery,Jquery,这是缺少分号或卷曲括号或什么,我无法找到在哪里或如何 任何关于如何调试此类问题的建议都会有所帮助。我在firebug告诉我的行中添加了一条建议,但它仍然不起作用,也没有意义 $(document).ready(function () { $('#go').click(function () { $.ajax({ type: 'POST', data: $('#n
$(document).ready(function () {
$('#go').click(function () {
$.ajax({
type: 'POST',
data: $('#newsletter').serialize(),
url: $('#newsletter').attr('action'),
success: function()
{
$('#thankYou').show(1000,setTimeout(
function(){
$('#thankYou').hide()
})
,3000);
};
});
return false;
});
});
它仍然显示了与此相关的语法错误
function()
{
$('#thankYou').show(1000,setTimeout(
function(){
$('#thankYou').hide()
})
,3000);
}
在这里:
,3000);
}; // 您应该在这些函数上做更多的嵌套,这可能会帮助您在将来找到它。下面是更加缩进的代码:
$(document).ready(function() {
$('#go').click(function() {
$.ajax({
type: 'POST',
data: $('#newsletter').serialize(),
url: $('#newsletter').attr('action'),
success: function() {
$('#thankYou').show(1000, setTimeout(function() {
$('#thankYou').hide();
}), 3000);
};
});
return false;
});
});
问题是“;”在成功函数声明之后。看起来有3个问题:
额外的分号
show()
语法
setTimeout()
语法
这应该是可行的:
PS:对于显示和隐藏,jQuery提供:
success: function () {
$('#thankYou').show (400).delay (2500). hide (400);
}
(“我们不需要糟糕的setTimeout。”)我猜最后一个分号上面的三个分号是错误的,但我不确定。你确定里面没有其他代码吗?或者一些浏览器上的错误控制台插件是有用的插件。你可以试试,我用。它会告诉你你的错误以及错误发生的地方。这有点紧张,但是如果你愿意的话,你可以改变设置,变得更自由。是的,我得出了同样的结论。如果您愿意,您可以在那里使用逗号,如果您要将其他属性添加到$.ajaxYeah,逗号将是最好的选择。除了后面的逗号将破坏IE8和更低版本。谢谢,这起到了作用。我将它粘贴到firebug中时,它不起作用。然后执行了。很高兴我们最终弄明白了。
$(document).ready ( function () {
$('#go').click ( function () {
$.ajax ( {
type: 'POST',
data: $('#newsletter').serialize (),
url: $('#newsletter').attr ('action'),
success: function () {
$('#thankYou').show (
1000,
function () {
setTimeout ( function() { $('#thankYou').hide(); }, 3000);
}
);
}
} );
return false;
} );
} )
success: function () {
$('#thankYou').show (400).delay (2500). hide (400);
}