从未遇到过这个问题?我在最新版本的jQuery中遇到此错误。我尝试使用1.6.2版本,没有问题。
TypeError: '[object HTMLInputElement]' is not a function (evaluating 'elem[ type ]()')
line 3175
我们应该注意哪些事情发生了变化?
谢谢, 千斤顶
答案 0 :(得分:37)
如果您的input
标记的任何名称为submit
,则通常会发生这种情况。
例如,
<form id="frm">
<input type="submit" name="submit" value="Post" />
</form>
在上面的代码中,document.getElementById("frm").submit
代表input
元素。将()
应用于submit
时会显示此错误。
答案 1 :(得分:7)
我发现使用onclick
属性调用与同名的JavaScript函数 id
或name
元素上的em> input
属性:
<input id='foo' name='fooName' onclick='foo();'> <!-- BAD: id matches function -->
<input id='fooId' name='foo' onclick='foo();'> <!-- BAD: name matches function -->
<input id='fooId' name='fooName' onclick='foo();'> <!-- WORKS! -->
无论输入类型如何,都会发生此行为。
答案 2 :(得分:3)
我最近在safari上提出类似的问题,提交一份表格。原来是由于提交输入元素具有name="submit"
,这是冲突的,导致它将其作为不是函数返回。