2011-12-29 2 views
12

이 문제가 발생하지 않았습니까? jQuery 최신 릴리스에서이 오류가 발생합니다. 나는 버전 1.6.2로 시도했지만 아무런 문제가 없다.TypeError : '[HTMLInputElement]'객체가 jQuery form.submit()에서 (elem [type]()을 평가하는 함수가 아닙니다.

TypeError: '[object HTMLInputElement]' is not a function (evaluating 'elem[ type ]()') 

line 3175 

변경해야 할 사항이 있습니까? 당신의 input 태그의 이름의이 submit 경우

덕분에, 잭

+6

관련 코드를 표시 할 수 있습니까? –

+0

어딘가에 잘못된 인수를 전달하는 것처럼 보입니다. –

+0

아마도'''$ (form) .submit()'''을 시도해보십시오. –

답변

37

이 일반적으로 발생합니다. 예를 들어 상기 코드

<form id="frm"> 
    <input type="submit" name="submit" value="Post" /> 
</form> 

document.getElementById("frm").submitinput 원소를 나타낸다. ()submit에 적용하면이 오류가 표시됩니다.

+0

) Thanks Shiplu 대신 jQuery를 사용할 때 사용할 이름에 대해 좀 더 신중해야한다. – juminoz

+3

@juminoz : jQuery와 관련이 없으며 일반적인 JavaScript/DOM/scope 문제입니다. –

+0

@FelixKling 사실일지도 모르지만 버전 1.6.2에서 같은 문제가 발생하지 않았으므로 – juminoz

3

최근 사파리로 비슷한 문제가 발생하여 양식을 제출하는 자바 스크립트가 조금 있습니다. 밖으로 던져진 name="submit"을 가진 제출 입력 요소 때문인 것으로 밝혀졌습니다. 충돌이 발생하여 함수가 아닌 것으로 반환하게되었습니다.

<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! --> 

이를 :

7

가 나는 input 요소에 id또는name 속성 중 하나 같은 이름의 자바 스크립트 함수를 호출하는 onclick 속성을 사용할 때이 오류가 발생합니다 것으로 나타났습니다 동작은 입력 유형에 관계없이 발생합니다.

+0

이것은 정확히 나를 위해 오류를 일으키는 것입니다. 체크 박스 설정을 다음과 같이 설정했습니다 : '' "name"과 "id"태그 : ' –

+0

충돌 문제를 지적 해 주셔서 감사합니다. – tangent

+0

은 아무도 아이디와 이름이있는 실제 예제를 작성하지 않았기 때문에 나이를 먹었습니다. 그렇지 않으면 일치하는 이름으로 인해이 오류가 발생합니다. 고마워요! – Rikco

관련 문제