执行“onClick”后无法阻止清除所选选项

时间:2013-05-20 21:28:58

标签: javascript javascript-events

我目前正在处理一个通过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
}

2 个答案:

答案 0 :(得分:0)

默认情况下,button元素是提交按钮。如果你添加

type="button"

......对它,例如:

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

...这将阻止它提交表单并重写整个页面。

答案 1 :(得分:0)

AJAX是异步的

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