.submit( handler(eventObject) )返回: jQuery
描述: 为 JavaScript 的 "submit" 事件绑定一个处理函数,或者触发元素上的该事件。
- 
添加的版本: 1.0.submit( handler(eventObject) )
- 
handler(eventObject)类型: Function()每次事件触发时会执行的函数。
 
 - 
 - 
添加的版本: 1.4.3.submit( [eventData ], handler(eventObject) )
- 
eventData类型: PlainObject一个对象,它包含的数据键值对映射将被传递给事件处理程序。
 - 
handler(eventObject)类型: Function()每次事件触发时会执行的函数。
 
 - 
 - 
添加的版本: 1.0.submit()
- 这个方法不接受任何参数。
 
 
这个函数的前两个用法是 .bind('submit', handler) 的快捷方式,第3个不带参数的用法是 .trigger('submit') 的快捷方式。
当用户试图提交表单时,就会在这个表单元素上触发submit事件。它只能绑定在<form>元素上。以下几种情况会导致表单被提交:用户点击了<input type="submit">, <input type="image">, 或者 <button type="submit">,或者当某些表单元素获取焦点时,敲击Enter(回车键),都可以提交。
根据不同的浏览器,Enter 键可能会导致表单被提交,如果这个表单只有一个文本框或只有一个 submit 按钮的话。界面不应该依赖于这个键的特殊行为,除非已经使用了 keypress 事件来监听 Enter 键的按下。
举例来说,请看下面的HTML:
| 
          
             1 
          
            2 
          
            3 
          
            4 
          
            5 
          
            6 
          
            7 
          
         | 
        
          
  | 
      
这个事件处理程序可以绑定到表单
| 
          
             1 
          
            2 
          
            3 
          
            4 
          
         | 
        
          
  | 
      
现在当表单提交时,警告将被显示。出现这种情况的实际提交之前,所以我们可以通过调用事件对象的.preventDefault()或在处理函数中返回 false 来取消提交:
| 
          
             1 
          
            2 
          
            3 
          
         | 
        
          
  | 
      
这些代码执行后,点击Trigger the handler 同样会警报显示。此外,默认的submit表单上的动作上会被触发,所以表格将被提交。
在Internet Explorer中,JavaScript的submit事件不会泡沫。但是,依赖 submit 事件代理的脚本,从 jQuery 1.4 开始,可以跨浏览器正常使用。
Additional Notes(其他注意事项):
- 表单及他们的子元素不应该使元素名称或ID属性冲突,比如
submit,length, 或method。名称冲突可能会导致混乱的失败。对于一个完整的规则列表,并检查这些问题标记,看DOMLint。 - 
                            
.submit()方法只是作为.on( "submit", handler )的一个速记写法,移除该事件可以使用.off( "submit" )。 
例子:
Example: 如果你想根据一个标识来阻止表单被提交的话,可以像下面这样做:
| 
          
             1 
          
            2 
          
            3 
          
            4 
          
            5 
          
            6 
          
            7 
          
            8 
          
            9 
          
            10 
          
            11 
          
            12 
          
            13 
          
            14 
          
            15 
          
            16 
          
            17 
          
            18 
          
            19 
          
            20 
          
            21 
          
            22 
          
            23 
          
            24 
          
            25 
          
            26 
          
            27 
          
            28 
          
            29 
          
            30 
          
            31 
          
            32 
          
            33 
          
            34 
          
            35 
          
         | 
        
          
  | 
      
Demo:
Example: 如果你想根据一个标识来阻止表单被提交的话,可以像下面这样做:
| 
          
             1 
          
            2 
          
            3 
          
         | 
        
          
  | 
      
Example: 触发页面上第一个表单的提交事件:
| 
          
             1 
          
         | 
        
          
  |