今天晚上学习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. Android使用SQLite数据库(1)

    Android中使用SQLite数据库要通过SQLiteOpenHelper类. 首先,定义相关变量: // 数据库变量 DatabaseHelper mDBH; SQLiteDatabase db; ...

  2. 【Java每日一题】20161028

    package Oct2016; public class Ques1028 { public static void main(String[] args){ new B().out(); // 输 ...

  3. Delphi 10.1 Berlin 官方未列之修正

    Delphi 10.1 Berlin 官方修正列表: Bug fix list for RAD Studio 10.1 Berlin Delphi 10.1 Berlin 官方未列之修正: 修正 iO ...

  4. Gym 101102C---Bored Judge(区间最大值)

    题目链接 http://codeforces.com/gym/101102/problem/C problem description Judge Bahosain was bored at ACM ...

  5. collection中的retainAll()方法

    public class ArraylistDemo { public static void main(String[] args) { Collection list1 = new ArrayLi ...

  6. TreeSet集合深入了解--------攻击原理

    Set接口Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false.(无序,不可重复 )Set判断两个对象相同不是使用==运算符,而是根据equals方法.也就是说 ...

  7. 编写高性能Javascript代码的若干建议

    多年来,Javascript一直在web应用开发中占据重要的地位,但是很多开发者往往忽视一些性能方面的知识,特别是随着计算机硬件的不断升级,开发者越发觉得Javascript性能优化的好不好对网页的执 ...

  8. .NET正则表达式匹配Silverlight

    这是一个.NET正则表达式匹配工具的Silverlight 在页面中加入以下代码就可以了: <"> <param name="source" value ...

  9. Javascript实现的2048

    HTML代码如下 <!DOCTYPE html> <html> <head> <title></title> <meta charse ...

  10. jQuery的deferred对象使用详解——实现ajax线性请求数据

    最近遇到一个ajax请求数据的问题 ,就是想要请求3个不同的接口,然后请求完毕后对数据进行操作,主要问题就是不知道这3个请求誰先返回来,或者是在进行操作的时候不能保证数据都已经回来,首先想到能完成的就 ...