Javascript Mootools-ajax表单响应

Javascript Mootools-ajax表单响应,javascript,ajax,forms,submit,mootools,Javascript,Ajax,Forms,Submit,Mootools,我正试图用mootools发送一个表单,并根据php脚本的响应来做这样或那样的事情。问题是我无法在代码的onComplete部分中使用条件语句 我可能错过了一些非常明显的东西,请帮帮我:) 这是我在代码中使用php响应的拙劣尝试,但它当然不起作用。 不用说,我对所有这些异步客户机-服务器通信内容都是新手,但我对它非常感兴趣。您在if语句中赋值(single=),而不是检查相等(=)。换线 if($('modify-me').get('text') = "1") 到 对不起,伙计们,也许我迟到了

我正试图用mootools发送一个表单,并根据php脚本的响应来做这样或那样的事情。问题是我无法在代码的
onComplete
部分中使用条件语句

我可能错过了一些非常明显的东西,请帮帮我:)

这是我在代码中使用php响应的拙劣尝试,但它当然不起作用。
不用说,我对所有这些异步客户机-服务器通信内容都是新手,但我对它非常感兴趣。

您在if语句中赋值(single=),而不是检查相等(=)。换线

if($('modify-me').get('text') = "1")


对不起,伙计们,也许我迟到了。。。我正在为客户端开发Mootools 1.2.4,为后端开发PHP。这是我提交表单并从服务器获得响应的方式

    $('myFormID').set('send', {
        noCache: true,
        onRequest: function(){
            // show some rotating loader gif...
        },
        onComplete: function(response) {
            // hide the loader gif...
            objJson = JSON.decode(response);
            if(objJson.success){
                // do your success stuff...
                alert(objJson.msg);
            } else {
                alert(objJson.msg);
            }
        },
        onFailure: function(){
            alert("Request Aborted.");
        }
    }).send();
在我的例子中,表单提交是由一个按钮触发的,但可以是任何。。。让我们看看服务器端(我使用PHP,但任何其他语言都很好)


在所有的服务器端检查和验证(可能还有MySql batabase上的更新)之后,我只返回一个Json数组(这就是为什么我在客户端地球上有一个Json.decode(response))然后只检查“success”键,以发现提交是否在服务器端成功。我只是添加了一条显示在警报中的小消息。显然,我可以使用JSON数组将更多的数据发送回客户端,但在这种情况下就足够了。希望这能有所帮助,请让我知道更好的解决方案。

很好,这里+1。但是,在条件语句中使用元素的值之前,是否有一种方法不必将响应分配给元素?我的意思是,如果不做那件丑恶的事,难道没有办法区分成功和失败吗?我不确定我是否理解-我没有使用MooTools,但谷歌似乎建议只有在成功完成响应后才会触发onComplete?成功完成并不意味着php脚本的特定响应,这就是我没能做到的。我希望直接使用响应的值,而不将其添加到之前的元素中。来自MooTools API:。看起来onComplete已被onSuccess替换,您可以在函数onSuccess与onComplete不同的情况下访问reponsHTML(以及其他内容)
if($('modify-me').get('text') == "1")
    $('myFormID').set('send', {
        noCache: true,
        onRequest: function(){
            // show some rotating loader gif...
        },
        onComplete: function(response) {
            // hide the loader gif...
            objJson = JSON.decode(response);
            if(objJson.success){
                // do your success stuff...
                alert(objJson.msg);
            } else {
                alert(objJson.msg);
            }
        },
        onFailure: function(){
            alert("Request Aborted.");
        }
    }).send();
    if($somethingWentWrong){
    echo json_encode(array("success" => false, "msg" => "Check your form."));
} else {
    echo json_encode(array("success" => true, "msg" => "Data saved."));
}