jquery提交表单和处理响应

来源:互联网 发布:网络歌曲犯错 编辑:程序博客网 时间:2024/06/06 00:24

后台代码

pw.write("{\"status\":\"success\",\"message\":\"修改成功\"}");

JSON字符串格式:{"name" :  "zhangsan", "age" : 20}

注意属性要使用双引号括起来,单引号不行,字符串值也要用双引号括起来,int不需要双引号

前台代码

$.post($("#form").attr("action"), $("#form").serialize(), function(data, textStatus) {//data为后台返回的字符串,textStatus为状态,成功为success

                    alert(typeof data);//string,如果不设置contentType,data是string类型的如果设置了contentType为application/json,那么jquery会自动调用$.parseJSON方法将data转换为object

                    var result = $.parseJSON(data);//将字符串转为javascript对象

                    alert(typeof result);//obj,转换后为object类型的,是javascript对象

                    var msg = "";

                    if(result.status == "success") {
                        msg = result.message;
                    } else {
                        msg="错误"
                    }
                    $.dialog({
                        title:'提示信息',
                        content : msg,
                        window: 'top',
                        time:'1.5',
                        yesFn : false,
                        closeFn : function(){
                        }
                    });

                });


后台代码:不设置contentType

pw.write("[{\"name\":\"zhangsan\",\"age\":20},{\"name\":\"lisi\",\"age\":20},{\"name\":\"wangwu\",\"age\":20}]");


前台代码:

$.post("jquery", function(data, textStatus) {
            alert(typeof data);//string,data是string类型的
            var result = $.parseJSON(data);
            alert(typeof result);//obj,转换后是object类型的,是数组
            $.each(result, function(index, obj) {
                alert(index)
                alert(obj.name);
            })
        });

jquery each函数

jQuery.each( collection, callback(indexInArray, valueOfElement) )


<!DOCTYPE html>
<html>
    <head>
        <style>
div {
    color: blue;
}

div#five {
    color: red;
}
</style>
        <script src="http://code.jquery.com/jquery-1.7rc2.js"></script>
    </head>
    <body>

        <div id="one"></div>
        <div id="two"></div>
        <div id="three"></div>
        <div id="four"></div>
        <div id="five"></div>
        <script>
    var arr = [ "one", "two", "three", "four", "five" ];
    var obj = {
        one : 1,
        two : 2,
        three : 3,
        four : 4,
        five : 5
    };

    jQuery.each(arr, function() {//可以遍历数组,后台返回的JSON数组字符串通过$.parseJSON转换以后就是javascript数组对象
        $("#" + this).text("Mine is " + this + ".");
        return (this != "three"); // will stop running after "three"
        });

    jQuery.each(obj, function(i, val) {//可以遍历对象,后台返回的JSON对象字符串通过$.parseJSON转换以后就是javascript对象
        $("#" + i).append(document.createTextNode(" - " + val));
    });
</script>

    </body>
</html>

原创粉丝点击