-1

現在、ajax 経由でデータを送信し、応答を使用してフォームのコントロールをリセットするページに取り組んでいます。

ボタンの onClick 関数が呼び出されると、すべて正常に機能しますが、リストで選択した値が選択解除されます。

コードをステップ実行すると、選択したオプションが、関数が返された後のステップまで選択されたままになっていることがわかります。最後のステップが実行されると、オプションが選択解除される原因となる何かが発生します。

これが私が使用しているコードです

HTML:

<button id="update" name="update" value="update" onclick="updateStudent(this, 'Student')">Update Student</button>

Javascript:

function updateStudent(obj, theTitle){

    var SID = sendForm(obj, theTitle); //ajax update.

    // Select Student just updated
    $('#sid option[value=' + SID + ']').prop('selected', 'true');
    $('#sid').click(); // Trigger select's OnClick method
}
4

2 に答える 2

0

AJAX は非同期です

成功のコールバックでそれを設定する必要があります。

于 2013-05-20T21:31:17.903 に答える
0

このbutton要素は、デフォルトでは送信ボタンです。追加すると

type="button"

...それに、例えば:

<button id="update" type="button" name="update" value="update" onclick="updateStudent(this, 'Student')">Update Student</button>
<!-- New bit -------^^^^^^^^^^^^^         -->

...これにより、フォームを送信してページ全体を書き換えることができなくなります。

于 2013-05-20T21:30:34.230 に答える