Здравствуйте!
У меня вопрос по JQuery UI, но отдельной темы не нашел, поэтому пишу сюда.
Проблема у меня следующая: захотелось мне в модальном диалоге сделать кнопку по-умолчанию. Ну я и сделал:
<script>
$(function() {
var bOk = false;
$( "#dlgLogin" ).dialog({
autoOpen: true,
height: 200,
width: 300,
modal: true,
buttons: {
"Ok": function() {
var dataObj = {"txtPassword" : $("#txtPassword").val()};
$.ajax({
type: "POST",
url: "spra/users/CheckPassword.jsp",
data: dataObj,
dataType: "JSON",
success: function(data){
if (data.bOk == "1"){
$("#lblUserName").html(data.cName);
$("#txtCurrentUserId").val(data.nId);
bOk = true;
$("#dlgLogin").dialog( "close" );
}else{
$("#lblError").html("Error! Try again.");
}
}
});
}
},
[B] open: function() {
$("#dlgLogin").keypress(function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
$(this).parent().find('.ui-dialog-buttonpane button:first').click();
}
});
},
[/B] beforeClose: function( event, ui ) {
if (!bOk){
return false;
}
}
});
});
</script>
<div id="dlgLogin" title="Login">
<form>
<fieldset>
<label for="txtPassword">Password:</label>
<input type="password" name="txtPassword" id="txtPassword" value="" class="text ui-widget-content ui-corner-all" />
</br><span style="color:RED" id="lblError"> </span>
</fieldset>
</form>
</div>
CheckPassword.jsp
<%
///// ...................
out.print("{");
out.print("\"nId\" : \"" + nUserId + "\",");
out.print("\"cName\" : \"" + cUserName + "\",");
out.print("\"cLogin\" : \""+ cUserLogin+"\",");
out.print("\"bOk\" : \""+ nOk +"\"");
out.print("}");
///.......................
%>
Только не заработалО ОНО.
Когда я ввожу пароль и жму мышкой "Ok" - всё работает.
Но когда я ввожу пароль и жму <Enter>, происходит переход к обработчику события нажатия кнопки, производится ajax-вызов CheckPassword.jsp... И всё падает в произвольном месте (смотрю под отладчиком IDEA).
Подскажите, пожалуйста, кто и как устанавливал в JQuery UI Dialog кнопки по-умолчанию.