[转]jquery.form.js的ajaxSubmit和ajaxForm使用

时间:2023-03-08 18:02:01
[转]jquery.form.js的ajaxSubmit和ajaxForm使用

参考 http://www.cnblogs.com/popzhou/p/4338040.html

  • 依赖的脚本文件
     <script src="../Javascript/jquery-1.11.1.min.js" type="text/javascript"></script>
    <script src="../Javascript/jquery.form.js" type="text/javascript"></script>
  • AjaxSubmit 和AjaxForm区别
    ajaxForm 
    ajaxForm()不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。提交动作必须由submit开始 
    ajaxForm()适用于以表单提交方式处理ajax技术(需要提供表单的action、id、 method,最好在表单中提供submit按钮)它大大简化了使用ajax技术提交表单时的数据传递问题,使用ajaxForm()你不需要逐个的以 JavaScript的方式获取每个表单属性的值,并且也不需要在请求路径后面通过url重写的方式传递数据。ajaxForm()会自动收集当前表单中每个属性的值,然后将其以表单提交的方式提交到目标url。这种方式提交数据较安全,并且使用起来更简单,不必写过多冗余的JavaScript代码
    ajaxSubmit 
    ajaxSubmit()马上由AJAX来提交表单。你可以在任何情况下进行该项提交。 

    ajaxSubmit()适用于以事件的机制以ajax提交form表单(超链接、图片的click事件),该方法作用与ajaxForm()类似,但它更为灵活,因为他依赖于事件机制,只要有事件存在就能使用该方法。你只需指定该form的action属性即可,不需要提供submit按钮。

  • 示例代码
     <!--HTML-->
    <form id="form1" name="form1">
    <input id="userName" name="userName" value="姓名" />
    <input id="age" name="age" value="30" />
    <input type="submit" value="submit" />
    </form>
    <input id="myButton" type="button" value="提交" />
    <!--javascript-->
    <script type="text/javascript"> var myData = {
    "CnName": "周佳良",
    "EnName":"zhoujl"
    };
    $(function () {
    var ajaxFormOption = {
    type: "post", //提交方式
    dataType: "json", //数据类型
    data: myData,//自定义数据参数,视情况添加
    url: "TestHandler.ashx?type=ajaxForm", //请求url
    success: function (data) { //提交成功的回调函数
    document.write("success");
    }
    }; //form中有submit按钮——方式1
    $("#form1").ajaxForm(ajaxFormOption); //form中有submit按钮——方式2
    $("#form1").submit(function () {
    $(this).ajaxSubmit(ajaxFormOption);
    return false;
    }); //不需要submit按钮,可以是任何元素的click事件
    $("#myButton").click(function () {
    $("#form1").ajaxSubmit(ajaxFormOption);
    return false;
    }); });
    </script>