Jquery Ajax 提交

本贴最后更新于 1715 天前,其中的信息可能已经时移世改

jQuery的serialize()方法通过序列化表单值,创建URL编码文本字符串,处理中文不会乱码,就可以选择一个或多个表单元素,也可以直接选择form将其序列化,如:

<form action="">
First name: <input  name="fname" value="hou" /><br />
Last name: <input name="lname" value="terry" /><br />
</form>

$(document).ready(function(){
    console.log($("form").serialize()); // FirstName=hou&LastName=terry
});

 

这样,就可以把序列化的值传给ajax()作为url的参数,使用ajax()提交form表单了,而不需要一个一个获取表单中的值然后传给ajax()

$.ajax({
    type: 'post',
    url: 'user/useradd.do',
    data: $("form").serialize(),
    success: function(data) {
        if(data.msg == "success"){
            alert("ok");
        }else{
            alert("??")
        }
    },
    error:function(){
        alert("???")
    }
});

使用$.post()、$.get()和$.getJSON()也一样的

$.post('your url', $("form").serialize(), function(data) {
        // your code
    }
});

.get('your url', ("form").serialize(), function(data) {
// your code
}
});

.getJSON('your url', ("form").serialize(), function(data) {
// your code
}
});

推荐用$.ajax({}),因为这样可以自定义是否异步提交

  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。目前全球有 28% 的网站使用 jQuery,是目前最受欢迎的 JavaScript 库。

    58 引用 • 134 回帖 • 820 关注
  • AJAX
    22 引用 • 96 回帖

赞助商 我要投放

5 回帖
请输入回帖内容 ...
  • mymoshou

    谢谢分享

  • someone

    [em01]

  • Vanessa 1

    推荐使用 promise callbacks

    $.ajax( "example.php" ).done(function() {
        alert( "success" );
    }).fail(function() {
        alert( "error" );
    }).always(function() {
        alert( "complete" );
    });
    
  • someone

    感谢大神 V

  • Vanessa 1

    @Default Commenter 太客气了