Saya tidak tahu apakah ada opsi di widget jQuery UI , tetapi Anda bisa mengikat keypress
acara ke div yang berisi dialog Anda ...
$('#DialogTag').keypress(function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
//Close dialog and/or submit here...
}
});
Ini akan berjalan tidak peduli elemen apa yang memiliki fokus dalam dialog Anda, yang mungkin atau mungkin bukan hal yang baik tergantung pada apa yang Anda inginkan.
Jika Anda ingin menjadikan ini fungsionalitas default, Anda dapat menambahkan potongan kode ini:
// jqueryui defaults
$.extend($.ui.dialog.prototype.options, {
create: function() {
var $this = $(this);
// focus first button and bind enter to it
$this.parent().find('.ui-dialog-buttonpane button:first').focus();
$this.keypress(function(e) {
if( e.keyCode == $.ui.keyCode.ENTER ) {
$this.parent().find('.ui-dialog-buttonpane button:first').click();
return false;
}
});
}
});
Berikut tampilan yang lebih terperinci tentang tampilannya:
$( "#dialog-form" ).dialog({
buttons: { … },
open: function() {
$("#dialog-form").keypress(function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
$(this).parent().find("button:eq(0)").trigger("click");
}
});
};
});