使 用AJAX提交Form表单的方法

使 用AJAX提交Form表单的方法,其中主要的就是ajaxForm()和ajaxSubmit(),ajaxForm和ajaxSubmit都支持众多 的选项参数,这些选项参数可以使用一个Options对象来提供。Options只是一个JavaScript对象,它包含了如下一些属性与值的集合:

Options对象的详解:


1.)target
指明页面中由服务器响应进行更新的元素。元素的值可能被指定为一个jQuery选择器字符串,一个jQuery对象,或者一个DOM元素。
默认值:null。

2.)url
重写或者指定表单的'action'属性。
默认值:表单的action属性值

3.)type 
重写或者指定表单的'method' 属性,"GET"或"POST"。
默认值:表单的method属性值(如果没有找到默认为“GET”)。

4.)beforeSubmit 
表单提交前被调用的回调函数,该方法通常被提供来运行预提交逻辑或者校验表单数据。如果"beforeSubmit"回调函数返回false,那么表单将 不被提交。"beforeSubmit"回调函数带三个调用参数:数组形式的表单数据,jQuery表单对象,以及传入 ajaxForm/ajaxSubmit中的Options对象。表单数组接受以下方式的数据:
[ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
默认值:null

5.)success 
表单成功提交后调用的回调函数。如果提供"success"回调函数,当从服务器返回响应后它被调用。然后由dataType选项值决定传回responseText还是responseXML的值。
默认值:null

6.)dataType 
期望服务器的的回应的类型。null、"xml"、"script"或者"json"其中之一。dataType提供一种方法,它规定了怎样处理服务器的响应。这个被直接地反映到jQuery.httpData方法中去。下面的值被支持:
'xml':如果dataType == 'xml',将把服务器响应作为XML来对待。同时,如果“success”回调方法被指定,将传回responseXML值
'json':如果dataType == 'json', 服务器响应将被求值,并传递到“success”回调方法,如果它被指定的话。
'script':如果dataType == 'script', 服务器响应将求值成纯文本。
默认值:null(服务器返回responseText值)

7.)semantic 
布尔标志,表示数据是否必须严格按照语义顺序来进行提交。注意:一般来说,表单已经按照语义顺序来进行了串行化(或序列化),除了 type="image"的input元素。如果你的服务器有严格的语义要求,以及表单中包含有一个type="image"的input元素,就应该将 semantic设置为true。
默认值:false

8.)resetForm 
布尔标志,表示如果表单提交成功是否进行重置。
默认值:null

9.)clearForm 
布尔标志,表示如果表单提交成功是否清除表单数据。
默认值:null

10.)在$.ajax options中用到的元素都可以用在这里: 

如:timeout:3000


11.)AjaxForm和AjaxSubmit区别
ajaxForm:不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。提交动作必须由submit开始
ajaxSubmit:马上由AJAX来提交表单。你可以在任何情况下进行该项提交。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <title>ajaxForm Laboratory</title>
    <link rel="stylesheet" type="text/css" href="../../common.css">
    <link rel="stylesheet" type="text/css" href="styles.css">
    <script type="text/javascript"
            src="../../scripts/jquery-1.2.1.js"></script>
    <script type="text/javascript"
            src="../../scripts/support.labs.js"></script>
    <script type="text/javascript" src="../../scripts/jquery.form.js"></script>
    <script type="text/javascript">
    	//1.window.onload()相似 $(function())
    	//  $(function() { } )是在dom结构创建完成以后就执行,
      //  window.onload是在整个页面加载完成之后(包括页面上的资源,比如图片)才执行
      $(function(){
      	//2. AJAX提交Form表单的方法:ajaxForm()和ajaxSubmit()
        //   包含相关参数由一个Javascript的Options对象来提供,包含了如下一些属性与值的集合
        var options = {
        	//2.表单提交后,服务器响应显示区域
          target: '#responseDisplay',
          //提交之前调用回调函数
          beforeSubmit: function(data,set,options) {
          	//感觉是生成Json的函数,给ID为dataDisplay的DOM标签赋值
            $('#dataDisplay').html($.toSource(data));
            var disposition = $('#dispositionGroup input:radio').fieldValue()[0];
            if (disposition != '') options[disposition] = true;
            var optionsClone = $.extend({},options);
            optionsClone.beforeSubmit = undefined;
            //感觉是生成Json的函数,给ID为optionsDisplay的DOM标签赋值
            $('#optionsDisplay').html($.toSource($.extend({},optionsClone),true));
            return true;
          }
        };
        //表单提交后,服务器响应更新至testForm处
        $('#testForm').ajaxForm(options);
        //图像相关是否表单数据串行序列化
        $('#testForm').bind('form.pre.serialize',function(type,$form,options,veto) {
        	alert("可以在这里对提交表单的字段的内容进行一些处理,例如把passwd进行加密"); 
          if ($('#semanticControl').fieldValue().length != 0) options.semantic = true;
        });
      });
    </script>
    <style>
      #console div {
        overflow: inherit;
      }
      #console div div {
        width: 540px;
        overflow: auto;
      }
    </style>
  </head>

  <body>
    <h1>ajaxForm Laboratory</h1>
    <fieldset>
      <legend>The form</legend>
      <div>
        <form id="testForm" action="reflectData.jsp" method="post">
          <div>
            <label>Text field:</label>
            <input type="text" name="text" value="some text"/>
          </div>

          <div>
            <label>Dropdown:</label>
            <select name="dropdown">
              <option value="dropdown 1">One</option>
              <option value="dropdown 2">Two</option>
              <option value="dropdown 3" selected="selected">Three</option>
              <option value="dropdown 4">Four</option>
              <option value="dropdown 5">Five</option>
            </select>
          </div>

          <div>
            <label>Input image:</label>
            <input type="image" name="inputImage" src="image.1.jpg" value="hibiscus blossom"/>
          </div>

          <div>
            <label>Check box group:</label>
            <input type="checkbox" name="cb" value="checkbox 1">One
            <input type="checkbox" name="cb" value="checkbox 2" checked="checked">Two
            <input type="checkbox" name="cb" value="checkbox 3">Three
          </div>

          <div>
            <label>Radio group:</label>
            <input type="radio" name="radio" value="radio 1">One
            <input type="radio" name="radio" value="radio 2" checked="checked">Two
            <input type="radio" name="radio" value="radio 3">Three
          </div>

          <div>
            <label>Text area:</label>
            <textarea name="textarea" rows="2">Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</textarea>
          </div>

          <div>
            <label> </label>
            <input type="submit" name="submitButton" value="Submit me!"/>
          </div>

        </form>
      </div>
    </fieldset>

    <fieldset>
      <legend>Control Panel</legend>
      <div>
        <form action="" οnsubmit="return false;">

          <div>
            <label>Semantic order:</label>
            <input type="checkbox" name="semantic" id="semanticControl"/> Check for yes
          </div>

          <div id="dispositionGroup">
            <label>After submission:</label>
            <input type="radio" name="disposition" value="1" checked="checked"/> Leave form be
            <input type="radio" name="disposition" value="resetForm"/> Reset form
            <input type="radio" name="disposition" value="clearForm"/> Clear form
          </div>
        </form>
      </div>
    </fieldset>

    <fieldset>
      <legend>Results</legend>
      <div id="console">
        <div>
          <label>Submitted data:</label>
          <div id="dataDisplay"></div>
        </div>
        <div>
          <label>Options:</label>
          <div id="optionsDisplay"></div>
        </div>
        <div>
          <label>Response:</label>
          <div id="responseDisplay"></div>
        </div>
      </div>
    </fieldset>
  </body>
</html>






  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值