2011-06-11 6 views
9

누구든지이 동작을 설명 할 수 있습니까? HTML 양식의 텍스트 상자에서 Enter 키를 누르면 양식에 하나의 텍스트 상자가 포함되어있을 때 양식이 제출되지만 양식에 두 개 이상의 텍스트 상자가있는 경우에는 양식이 제출되지 않습니다.Enter 키를 누르면 입력이 하나이지만 두 개가 아닌 HTML 양식이 제출됩니다

jsFiddle (하나 개의 입력) : http://jsfiddle.net/gpPTa/
jsFiddle (두 개의 입력) : http://jsfiddle.net/fDbJt/

+0

가능한 중복 http://stackoverflow.com/questions/17797025/why- 1-text-input-submit-on-one-with-two-text-inpu) – Pang

답변

0

이 브라우저는 하나의 입력이 있기 때문에, 그것은 또한 제출 제어 있다고 가정 것으로 보인다. 그것에 집중하고 enter를 누르면 제출 단추에 초점을 맞추는 것과 같은 방식으로 양식이 제출됩니다.

<inputs> 중 하나에 type="submit"을 추가하면 원하는만큼 다른 번호를 사용할 수 있으며 form will be submitted by pressing enter을 사용할 수 있습니다.

이 문제를 뒷받침 할 참조가 없지만 논리적입니다.

+0

이 동작은 나에게 너무 모순 된 것처럼 보입니다. 나는 왜 유일한 ''이 유일한 폼 엘리먼트이기 때문에 폼을 submit하는 이유를 알 수 있습니다. 그러나 왜 ''이''이'type = "submit"을 포함하면 하나의 입력을 누르는 것이 폼을 제출하는지 보지 못합니다. 이 동작 뒤에 근거가되는 사양이 있는지 궁금합니다. – thinkterry

3

입력시 하나의 입력으로 양식에 제출하는 것이 기본값입니다.

각자에게 양식을 제출하는 javascript 명령을 제공하거나 width : 0 및/또는 visibility : none과 함께 제출 버튼을 배치 할 수 있습니다. 예를 들어 :

<form> 
    <input style='width:0; visibility:hidden' type='submit'> 
    <input> 
    <input> 
</form> 
[? 하나의 텍스트 입력과 FORM은 두 개의 텍스트 입력을 하나하지 않는 동안 입력에 제출 않는 이유]의 (
관련 문제