"ENTER"를 누르고 대화 상자에 제출 버튼과 동일한 작업을 실행하게하고 싶습니다.jQuery UI 대화 상자 - Enter 키가 클릭과 동일해야합니다.
여기에서 비슷한 질문을 발견했습니다 : Submit jQuery UI dialog on <Enter>. 일부 솔루션을 코드에 추가했는데 문제가 해결되지 않았습니다.
이버튼 :
<button id="myButton">Execute Tasks</button>
대화 자체 :
<div id='myDialog' title="New Task(s):">
<p>Enter the name of the tasks you wish to execute</p>
<form>
<label for="name">
<input type="text" name="name" id="name" />
</label>
</form>
</div>
내부 스크립트 태그 :
$('#myButton').click(function() {
$("#myDialog").dialog({
open: function(){
$("#myDialog").unbind('submit');
$("#myDialog").submit(function() {
$("#myDialog").parents('.ui-dialog').first().find('.ui-button').first().click();
return false;
});
},
buttons: {
"Run tasks": function() { .... },
"Cancel":function() { $(this).dialog("close"); };
},
});
});
당신은 키 누르기 이벤트를 바인딩 할 필요가 없습니다. 텍스트 상자가 양식 내에 있기 때문에 Enter는 양식을 자동 제출해야합니다. –
그러나 귀하의 초점이 텍스트 제출에만있는 경우. 필자는 모든 입력 keydown이 양식을 제출할 수 있도록 "input"요소를 "document"요소로 변경했습니다. –