ユーザーが送信をクリックすると、ajax を介して php スクリプトを起動して検証を行うフォームがあります。現在、それが行う唯一のことは、投稿値をエコーすることです。ユーザーが「Dog」という単語を formEntry に入力すると、ajax の応答は Dog になります。ユーザーがダイアログ ウィンドウをキャンセルしてから、"Dog" を "Cat" に変更しても、ajax 応答には引き続き dog が表示されます。
var dataToSend = "";
var formEntry = $('#formEntry').val();
dataToSend += "data="+formEntry;
$.ajax({
type: "POST",
url: "checkData.php",
data: dataToSend,
success: function(result){
$('#dialog').dialog('open');
$('#dialog').html(result);
}
});
フォーム エントリ:
<div class='inputText'><input type='text' name='formEntry' id='formEntry' value='<?php echo $someValue;?>'></div>
テストとして、var 定義の直後に alert(formEntry) を追加しましたが、これも「Dog」と表示されます。値を複数回変更した場合でも、値は常に ajax 呼び出しの最初の値です。