jquerydone方法用法
我有一个小脚本来演示我的问题,下面是test.html页面的javascript代码jquerydone方法用法,jquery,Jquery,我有一个小脚本来演示我的问题,下面是test.html页面的javascript代码 <script> function test(e) { if(e < 2) { return; } else { return $.ajax({ type: "POST", url: "test.php", da
<script>
function test(e) {
if(e < 2) {
return;
} else {
return $.ajax({
type: "POST",
url: "test.php",
data: {
e: e
},
success: function (data) {
alert(data);
}
});
}
}
$(document).ready(function () {
$(document).on("click", "#bth", function () {
test(1).done(function () {
alert('done');
});
});
});
</script>
功能测试(e){
if(e<2){
返回;
}否则{
返回$.ajax({
类型:“POST”,
url:“test.php”,
数据:{
e:e
},
成功:功能(数据){
警报(数据);
}
});
}
}
$(文档).ready(函数(){
$(文档)。在(“单击”上,“#bth”,函数(){
测试(1).完成(功能(){
警报(“完成”);
});
});
});
及
在test.php中,我将
<?php echo $_POST['e']; ?>
我在这一行遇到javascript错误:test(1).done(function(){
如果参数不止一个(例如test(2)
),则可以正常工作
如何解决此问题?如果
e<2
,则函数不会返回任何内容。您不能在
未定义的上调用.done()
相反,您可以返回预解析的延迟对象:
return $.Deferred().resolve(someResult)
如果e<2
,则函数不会返回任何内容。
您不能在未定义的上调用.done()
相反,您可以返回预解析的延迟对象:
return $.Deferred().resolve(someResult)