AJAX を使用してフォームを送信しようとしています。フォームは jQuery UI ダイアログのコンテンツです。
jQueryのドキュメントと同じコードを使用しています
テキスト入力が 1 つだけになるようにフォームを変更したので、フォームは次のようになります。
<form>
<fieldset>
<label for="answer"><strong>Your Answer : </strong></label>
<input type="text" name="answer" id="answer" class="text ui-widget-content ui-corner-all" />
</fieldset>
</form>
OK(またはユーザーの作成)ボタンをクリックすると機能します。つまり、AJAXで回答を送信しますが、Enterキーを押したときにも機能するようにします。
入力asd
しinput#answer
てEnterキーを押すと、URLは次のようになります。
mysite.com/?answer=asd
関数を追加してみました:
$('#answer').keypress(function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
alert("enter pressed on answer input");
}
});
今回は警告"enter pressed on answer input"
してから URL を変換します。URL を変更したくないのですが、その関数を削除するにはどうすればよいですか? それはどこで定義されていますか?
要するに、エンターキーは自分がやりたいことだけをしてほしいのです。
助けてくれてありがとう!
編集:
マウスクリックで機能するボタンは、次のjQuery.dialog();
ように追加されます。
$( "#dialog-form" ).dialog({
autoOpen: false,
height: 300,
width: 350,
modal: true,
buttons: {
Answer: function() {
var answer = $("#dialog-form #answer").val();
alert("your answer : "+answer);
submit_with_ajax(answer);
},
Cancel: function() {
$( this ).dialog( "close" );
}
},
close: function() {
allFields.val( "" ).removeClass( "ui-state-error" );
alert("asd");
}
});