Ask*_*mov 1 javascript asp.net ajax jquery
我有一个按钮编码如下:
<asp:Button ID="save_all_filt" runat="server" Text="All data for filtered subjects"
ClientIDMode="Static" OnClientClick="a= saveAllFilt(); return a; "
OnClick="save_all_filt_Click" />
Run Code Online (Sandbox Code Playgroud)
saveAllFilt是一个调用常见JQuery ajax调用的函数.像这样的东西:
function saveAllFilt() {
jQuery.ajax({
async: false,
dataType: 'json',
contentType: "application/json; charset=utf-8",
type: "POST",
url: contentURL,
data: dataarray,
success: function (msg) {
// Some processing here. ONLY WHEN IT IS DONE, I NEED TO HAVE POSTBACK.
},
error: function (data) {
}
}); // end of ajax call.
Run Code Online (Sandbox Code Playgroud)
}
我想要这样的事情:只有在ajax调用完成后才能继续执行onClick.我怎么能这样做?
您可以OnClick从按钮中删除该属性,并在OnClientClick属性中返回false,如:
<asp:Button ID="save_all_filt" runat="server" Text="All data for filtered subjects"
ClientIDMode="Static" OnClientClick="saveAllFilt(); return false;" />
Run Code Online (Sandbox Code Playgroud)
并设置一个具有该OnClick属性的隐藏按钮,如:
<asp:Button ID="hdnButton" runat="server" Text="" Visible="False"
ClientIDMode="Static" OnClick="save_all_filt_Click" />
Run Code Online (Sandbox Code Playgroud)
并在您的ajax通话成功方法中单击该按钮,如:
success: function (msg) {
// Some processing here. ONLY WHEN IT IS DONE, I NEED TO HAVE POSTBACK.
$('#hdnButton').click();
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6714 次 |
| 最近记录: |