gpt4 book ai didi

javascript - 在 ajax 响应中传递 JavaScript 函数

转载 作者:行者123 更新时间:2023-11-30 05:56:37 24 4
gpt4 key购买 nike

我正在尝试从 AJAX 提交的表单返回回调。用户提交表单,服务器处理并返回有效响应,即错误消息和可以执行操作的 JavaScript 函数。我正在使用 Zepto.js 并根据浏览器返回到 jQuery。

我的 ajax 请求是:

$.ajax({
success: function(data, status, xhr) {
data.callback();
},
url: form.attr('action'),
data: form.serialize(),
dataType: 'json'
});

在服务器上我想返回类似的东西:

// PHP code
?>
{
return: false,
error: 'Sorry, we couldn’t find an account with that username or password.',
callback: function() {
console.log('this is the callback');
}
}
<?php
// more PHP code

当返回到浏览器回调函数时应该触发。我希望服务器返回回调,以便我可以使用相同的 JavaScript 代码并让它根据服务器响应做出响应。

我需要将数据类型更改为脚本吗?但是我认为这只是为了加载 .js 文件,而不是代码块。

感谢任何帮助。

最佳答案

这里的一般感觉是我以错误的方式处理这个问题。所以修改代码:

$.ajax({
success: function(data, status, xhr) {
var callback = data['callback'];
callback();
},
url: form.attr('action'), // in this example it's badLogin
data: form.serialize(),
dataType: 'json'
});
// callback specified in PHP
badLogin: function() {
console.log('bad login');
}

还有我的 PHP

if (!$valid) {
?>
{
"return": false,
"error": "Sorry, we couldn’t find an account with that username or password.",
"callback": "badLogin"
}
<?php
}

感谢您为我指明了正确的方向。

关于javascript - 在 ajax 响应中传递 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11471753/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com