선택할 옵션이있는 Jquery UI 대화 상자를 여는 양식 필드의 초점 이벤트를 정의했습니다. 중단되지 않은 데이터 입력을 위해 동일한 필드에 포커스를 유지해야합니다. 내 요구 사항은 datepicker에 표시된 것과 비슷하지만 사용자가 datepicker 오버레이를 볼 수 있지만 날짜 필드에 포커스가 있으므로 사용자가 계속 날짜를 입력 할 수 있습니다.초점 이벤트가있는 필드에 초점 맞추기
다음은 관련 필드 및 대화 상자의 코드입니다.
$("#pmt_code").focus(function(){
$("#pmtcodes").dialog("open");
// Keep focus stayed on this field somehow
});
$("#pmtcodes").dialog({
autoOpen: false,
position: { my: "left top", at: "left bottom", of: $("#pmt_code") },
closeOnEscape: true,
open: function(){
listPmtCodes();
}
});
다음은 테이블이있는 대화 부서입니다. jquery datatable plugin을 사용하여이 테이블을 채우고 있습니다.
<div id="pmtcodes" title="payment Codes">
<table cellpadding="0" cellspacing="0" border="0" class="display" id="pmtCodesTable">
<thead>
<tr>
<th>Code</th>
<th>Description</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
도움이되기를 바랍니다 나 잘못 됐어. jquery-ui의 기본 포커스는 열린 대화 상자로 이동하지만 포커스를두고 대화 상자를 연 양식 필드에 포커스를두고 싶습니다. 나는 위의 예제에서 $ ("# pmt_code")에 집중하고 $ ("# pmtcodes")에서는 포커스하지 않는다. – bvnbhati
하지만 그 코드는 무엇입니까, 대화 상자를 연 후 $ ("# pmt_code")에 초점을 맞 춥니 다. 네가해야 할 일이 아닌가? – cacoroto
그렇게 간단하지 않습니다. 이제 방화 광 (firebug) 컨트롤을 체크 인하면 포커스 이벤트 핸들러로 돌아가 대화 상자를 다시 실행하려고 시도합니다. 또한 거기를 클릭하지 않으면 양식 필드에 초점을 맞추지 않습니다. – bvnbhati