zoukankan      html  css  js  c++  java
  • jQuery之ajaxForm提交表单

     
    1.jQuery的设计非常优雅,其源代码亦给人以美感,利用jQuery框架写出来的js既简练又能完美跨浏览器。   
    2.jquery form插件是基于jQuery开发的一套能够利用ajax技术提交form的框架。   
    3.无论是jQuery,还是jquery form 都是老外写的。   
    4.通常的jQuery ajax提交写法如下:   
    5. $.post("../user/user.do?d=checkPasswordOnUpdateByAjax",{old_password:old_password.val()},function(xml){   
    6.  });   
    7.其中:{old_password:old_password.val()}是挂的参数,为json串格式。如果只有几个参数,这种方法还是值得一用的,如果有几十个,从软件可维护性的角度去考虑,用这种方法实在不敢恭维。我曾经写过一个根据form的页内数据元素生成Json串的方法。但是对自己写的东西总觉得不够满意,有没有一种可以提交form数据的插件呢,google一下,输入关键字 jquery form plugin 。我很荣幸的搜到了我需要的东西,既然已经有轮子,自己发明的轮子暂时先放弃。从此我对jQuery form 的依赖及使用变得一发不可收拾。在我做的项目中大量的使用了该插件进行ajax数据提交。   
    8.把jquery form的相关文件导入页面   
    9.<script language="javaScript" src="../static/js/base/jquery.js"></script>      <!--jquery 包-->   
    10.<script language="javaScript" src="../static/js/base/jquery.form.js"></script>   <!--jquery  form包-->   
    11.且二者顺序不可以放反,因为文件是自上而下解析的。   
    12.function submitForm(){   
    13.    var form = $("form[name=MsgForm]");   
    14.    if($("input[name=user_name]").val() == null || $("input[name=user_name]").val() == ""){//这里是如果user_name为空则用ajaxform提交,否则按照传统方式提交。   
    15.        //ajax form post   
    16.        var options = {success:showResponse,resetForm:true,url:"../user/msg.do?d=sendMsgByAjax"};   
    17.        form.ajaxForm(options);   
    18.        return;   
    19.    }   
    20.    form.submit();// 传统form提交   
    21.}   
    22.function showResponse(xml){//回调函数   
    23.    if(1 == xml){   
    24.        alert("信息发送成功!");   
    25.    }else{   
    26.        alert("信息发送失败!");   
    27.    }   
    28.}   
    29.注意:   
    30.xml的值1或者-1是后台用response打出来的。如下:   
    31.response.setContentType("text/html;charSet=UTF-8");    
    32.response.setCharacterEncoding("UTF-8");    
    33.PrintWriter pw = response.getWriter();    
    34.pw.println("1");   
    35.url就是form表单要提交到的地址,当然若不指定,会自动使用form里action的值。   
    36.success的值也是函数,就是提交表单处理完后要做的事。
    实例:
    function jquerySubmit(formId,url,callback){//formId为表单id
        var options = { 
            beforeSubmit: showRequest,
            success: showResponse,
            url: url,
            formId: formId,
            type: 'post',
            dataType: 'json',
            handle: callback
        }; 
        $("#"+formId).ajaxForm(options); 
        $("#"+formId).submit();    
    }
  • 相关阅读:
    C#中常见的系统内置委托用法详解(抄录)
    ClassifyHandler 分类处理结构
    AutoFac Ioc依赖注入容器
    深入理解DIP、IoC、DI以及IoC容器
    ASP.NET MVC的请求处理流程
    电商秒杀功能实现
    MVC之Global.asax解析
    MVC基类控制器的会话丢失重新登录权限过滤
    MVC的Action上下文:ActionExecutingContext
    ASP.NET与MVC架构区别总结
  • 原文地址:https://www.cnblogs.com/lxcmyf/p/5778560.html
Copyright © 2011-2022 走看看