TypeError:e 不是函数
我一直在使用jquery 1.6没问题。 今天我切换到jquery 1.8,突然我在尝试提交表单时收到此错误:
TypeError: e[h] is not a function.
形成:
$("#login_button").click(function(){ $("#login").submit(); });
我错过了什么吗?
谢谢!
删除下面的行。
更新:
或者,如果您必须使用提交输入,则需要将id submit
更改为其他内容。 原因是如果你有一个id
为submit
的input元素,它会使用HTMLInputElement为表单设置一个submit
属性。 因此,您无法在HTMLFormElement上调用.submit
方法。
我浪费了3个小时试图解决同样的问题,我使用name =’submit’作为我的提交按钮并且正在调用$(“#form_name”)。submit(); 在一个函数中,并得到错误。 有时我忽略的小事最终会浪费很多时间。
我认为这是因为这条线
你可以删除它并重试吗?
当我们在表单中使用submit type元素时,This元素将被设置为表单的Submit属性。 因此无法使用表单的其他元素调用submit()函数。
有两种方法可以做到这一点。 第一个是删除第一个回复中给出的行。
或者使用$(“#submit”)。trigger(“click”); 而不是$(“#login”)。submit(); 。 它也会在按下输入关键字时提交表格。
您的form
和input
具有相同的名称属性值login
。
将input
上的name
更改为其他内容,例如submit
。 这应该可以清除你的错误。
使用jQuery 1.7(可能也是上面的)如果你有name
属性也称为submit
它将会破坏。
例如
但不会起作用:
很好。