成功后启动下一个功能
start next function after success
我想在ajax调用成功后启动一个函数。我现在要做的是
function ajaxCall(url, types, next) {
$.ajax({
url: url,
type: 'POST',
beforeSend: function () {
$("#plaatsMelding").append("<div id='"" + types + "verwerkt'"><div class='"progress-label'">" + types + " verwerken...</div></div>");
},
success: function (data) {
$('#plaatsMelding').empty();
$("#plaatsMelding").append("<div id='"" + types + "verwerkt'"><div class='"progress-label'">" + data + "</div></div>");
//run next script
if (next.length) {
alert(next);
next(); //this won't work because it will search for the next() function
}
}
});
}
我用下面的函数来启动这个函数:
function saveRace() {
ajaxCall("verwerkRace.php", "race", "savePlayers");
}
所以当这个函数准备好了,我想让它运行函数"savePlayers"。我该怎么做呢?
function savePlayers() {
ajaxCall("verwerkPlayers.php", "players");
}
不要传递字符串,传递函数:
function saveRace() {
ajaxCall("verwerkRace.php", "race", savePlayers);
}
然后在你的success
中你可以这样做:
if (next) {
next();
}
直接传入函数本身:
function saveRace() {
ajaxCall("verwerkRace.php", "race", savePlayers);
}
JavaScript不知道如何将字符串转换为要调用的函数
按照建议,传递一个函数而不是字符串
function saveRace() {
ajaxCall("verwerkRace.php", "race", savePlayers);
}
如果成功,你可以检查你是否传递了一个函数,然后触发它:
if (next && typeof(next) === 'function') {
next();
} else {
console.error('Error firing the callback!');
}
相关文章:
- 滚动到容器中的下一个元素-几乎到了
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- 使用ajax将数据从一个步骤发送到下一个步骤的3步表单
- AngularJS&JSON-从Previous&下一个对象
- 使用向下箭头键(与tab键一样)聚焦下一个输入
- 按下一个HTML按钮,该按钮使用一个功能在同一个新窗口中打开URL
- 谷歌应用程序脚本搜索UI下一个和上一个功能
- 如何使用上一个/下一个功能循环数组中的图像
- 如何将左/右箭头(下一个/上一个)功能添加到我的 jQuery 图像和文本滑块
- 灯箱“下一个”功能仍然显示已隐藏的元素 (li) 显示:无;
- Chrome 的开发工具或 Firebug 中是否存在“设置下一个语句”功能?
- 更改scrollTo功能以使下一个/上一个图像位于中心而不是左侧
- Javascript音频文件”;上一个/下一个“;文件/歌曲跳过功能
- 是否有可能覆盖sencha触摸旋转木马上一个和下一个功能
- 在开始下一个(fadeIn/fadeOut)之前完成功能
- 成功后启动下一个功能
- 如何使用下一个按钮的checkform功能
- 前一个/下一个功能失败
- 确保在前一个功能完成后启动下一个功能.在任务完成之前,禁用所有目标元素的已注册事件