今天晚上学习jquery form plugin时,在明白了该插件的用法时,

(1)该插件是将form的HTTP请求

改为AJax请求。

(2)支持像jQuery.ajax(options)一样

的options。

(3)可以处理mutilpart form data(文件上传)

(4)只能通过通过<input type='submit'>来激发异步表单提交的。

对此我有一个疑问:想看看使用其他的方式能否激发表单的异步提交?于是写了下面的一段代码:

 <form id="form1" action="FormServlet.do" method="post">
<table><tbody>
<tr><th>用户</th><td><input name="username"/></td></tr>
<tr><th>密码</th><td><input name="password" type="password"/></td></tr>
</tbody>
<tfoot>
<tr><td colspan="2"><input type="button" id="submit" value="提交"/></td></tr>
</tfoot></table></form>

使用javascript代码提交:

 $('#form1').ajaxForm({
success:function(data) {
console.log(data);
alert(data);
}
}); $("#submit").click(function() {
var form = document.getElementById("form1").submit();
});

然后在运行时,发现FireFox、360、IE8都报了同一个错误:form.submit() not a function。这就怪了,之前我就是这么用的,都没有出错。然后在W3School上搜索了一下(http://www.w3schools.com/jsref/met_form_submit.asp),发现确实javascript代码没有出错。这就纳闷了。然后,将<input id="submit">修改为
<input id="cc">,同时也修改了javascript代码,再次测试,没有报错。

这个测试说明了两个问题:

(1)<form>中要作为激发form提交的<input>的id不能是"submit";

(2) jquery form plugin 只能通过<input type="submit">来激发表单的提交。

form.submit() not a function的元凶的更多相关文章

  1. js提交表单错误:document.form.submit() is not a function

    今天在写JS时,遇上这么个错误:"document.form.submit() is not a function",经过一番搜索,最终找到了修复方法. 这个错误一般是由于表单&l ...

  2. form submit时将__VIEWSTATE和__VIEWSTATEGENERATOR一起post到另外的页面,出现验证视图状态 MAC 失败。

    错误信息: 验证视图状态 MAC 失败.如果此应用程序由网络场或群集承载,请确保 配置指定了相同的 validationKey 和验证算法.不能在群集中使用 AutoGenerate. 原因分析: F ...

  3. 文件上传时jquery.form.js中提示form.submit SCRIPT5: 拒绝访问

    利用其它控件触发file的click事件来选择文件后,使用jquery.form.js中的submit方法提交时IE报错:form.submit SCRIPT5: 拒绝访问,其它浏览器正常, < ...

  4. easyui form submit 不提交

    http://bbs.csdn.net/topics/390811964 function saveProduct() {             //$('#fm').form('submit',  ...

  5. form submit提交

    form内控件参数自动添加到url后,而自定义的url参数则不能添加到url后 $('#fm').form('submit', { url: 'Data/Diary.ashx?dt=' + new D ...

  6. [ext]form.submit()相关说明

    form.submit({    url:"../addOrUpdatePack.shtml",method:'POST',success:function(f,action) { ...

  7. AJAX Form Submit Framework 原生js post json

    https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest <!doctype ht ...

  8. form.submit 方法 并不会触发 form.onsubmit 事件

    做表单的时候发现一个奇怪的地方,总结下: form.submit 方法 并不会触发 form.onsubmit 事件,看代码: <body> <div class="con ...

  9. form submit 的callback方法

    参考:http://hayageek.com/jquery-ajax-form-submit/ form的submit方法返回数据处理. 普通的form: $("#ajaxform" ...

随机推荐

  1. 修复一个吉日嘎拉MSSQL数据库版中的分页存储过程bug

    这个存储过程是3.7以来一直存在,并未针对MSSQL2005以上版本进行ROW_NUMBER() OVER升级,还是延续TOP的写法.这并非是我所谓的bug,我所说的bug是指执行了排序的字段,如果字 ...

  2. git Submodule

    http://www.kafeitu.me/git/2012/03/27/git-submodule.html https://git-scm.com/book/zh/v2/Git-%E5%B7%A5 ...

  3. AngularJS的ng-click传参

    <ul id="dataSet" ng-repeat="item in infos" ng-model="dataSet"> & ...

  4. Scalaz(34)- Free :算法-Interpretation

    我们说过自由数据结构(free structures)是表达数据类型的最简单结构.List[A]是个数据结构,它是生成A类型Monoid的最简单结构,因为我们可以用List的状态cons和Nil来分别 ...

  5. Genymotion无法下载OVA文件

    百度 下载Genymotion离线OVA文件(http://pan.baidu.com/s/1jIe5pjC ) 将OVA离线文件放到这个目录下:C:\Users\Administrator\AppD ...

  6. C语言的数据、常量和变量

    一.数据 图片文字等都是数据,在计算机中以0和1存储. (一)分类 数据分为静态数据和动态数据. ①. 静态数据:一些永久性的的数据,一般存储在硬盘中,只要硬盘没坏数据都是存在的.一般以文件的形式存储 ...

  7. Android总结篇系列:Android广播机制

    1.Android广播机制概述 Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器).广播作为Android组件间的通 ...

  8. CAS客户端服务器端配置步骤

    来自我的个人网站:http://lkf.22web.org/ cas介绍: CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 ...

  9. .NET删除字节数组中的0字节

    private static byte[] Decode(byte[] packet) { ; while (packet[i] == 0) { --i; } ]; Array.Copy(packet ...

  10. JSON+YAML初步学习+ciscoconfparse

    Git git clone 在github.com右上角点击加号创建新的repository 在Linux或Mac命令行下,找到你想存放这个repository的目录,然后git clone 某个re ...