jQuery到PHP的数据传输 [英] jQuery to PHP data transfer

查看:85
本文介绍了jQuery到PHP的数据传输的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

具有以下jQuery文件

Having following jQuery file

$( document ).ready(function() {
         var urlform = "register/ajax";
    $("#btnRegister").click( function() {
        $("#Register").submit( function() {
           return false;    
        });
        $.ajax({
            url: urlform,
            type: 'POST',
            dataType: 'json',
            async: true,
            data: $("#Register").serialize(),
            success: function (data) {
                $("#email").css("border-color", "green");
                $("#rCheck").text(data);
                console.log(data);
            },
            error: function (data) {
                $("#email").css("border-color", "red");
                $("#rCheck").text(data);
                console.log(data);
            }
        }); 
    });
});

在控制台日志中,我得到

In console log i get

Object {email_reg: Object, confirm_password_reg: Object}
    confirm_password_reg: Object
         notSame: "Passwords Doesn't Match"
    __proto__: Object
    email_reg: Object
        recordFound: "E-mail address already exists"
    __proto__: Object
__proto__: Object

要获得更清晰的解释,请访问以下链接:.

For more clear interpretation there is following link:.

但是当使用 $(#rCheck").text(data); 在div中传输数据时,它仅获得 [object Object] .

But when transfering data in div using $("#rCheck").text(data); it gets only [object Object].

问题:如何仅传输以下错误消息:

Problem How to transfer only error messages like:

  • 密码不匹配
  • 电子邮件地址已存在

Json编码

    if (!$form->isValid()){
        // email is invalid; print the reasons
        $json= $form->getMessages();
        $response->setContent(\Zend\Json\Json::encode($json));
    }
    return $response;

在这里如何将$ json插入数组中.

How here $json can be pun in an array.

推荐答案

问题在于data是一个对象,当传递给.text()时,该对象将打印其.toString()版本,即[object Object].

the problems is data is an object, which when passes to .text() will print its .toString() version that is [object Object].

所以尝试

if (data) {
    var msgs = $.map(data, function (fieldObj, key) {
        return [$.map(fieldObj, function (msg, key) {
            return msg;
        })]
    });
    $('#abc').html(msgs.join('<br />'))
} else {
    //do something
}

这篇关于jQuery到PHP的数据传输的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆