-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

默认情况下,该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 回答
0

AJAX 是异步的

您需要在成功回调中进行设置。

于 2013-05-20T21:31:17.903 回答