<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$("[id*=btnModalPopup]").live("click", function () {
$("#modal_dialog").dialog({
title: "jQuery Modal Dialog Popup",
buttons: {
ok: function () {
$(this).dialog('close');
__doPostBack('btnModalPopup', 'OnClick');
//document.getElementById("btnModalPopup").click();
}
},
modal: true
});
return false;
});
</script>
<body>
<form id="form1" runat="server">
<div id="modal_dialog" style="display: none">
This is a Modal Background popup
</div>
<asp:Button ID="btnModalPopup" runat="server" Text="Show Modal Popup" ClientIDMode="static" OnClick="btnModalPopup_Click" />
</form>
</body>
上面代码显示J查询弹出消息。工作正常。但是在弹出消息之后我需要执行服务器端代码 如果我从脚本中删除Return False它执行服务器端代码但弹出消息消失。它应该执行弹出窗口的确定按钮后单击
请帮忙......
答案 0 :(得分:0)
服务器端方法
[System.Web.Services.WebMethod]
public static string GetCurrentTime(string name)
{
return "Hello " + name + Environment.NewLine + "The Current Time is: "
+ DateTime.Now.ToString();
}
客户端
function ShowCurrentTime() {
$.ajax({
type: "POST",
url: "CS.aspx/GetCurrentTime",
data: '{name: "' + $("#<%=txtUserName.ClientID%>")[0].value + '" }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function(response) {
//do
}
});
}
function OnSuccess(response) {
btnModalPopup_Click();
}
答案 1 :(得分:0)
将ClientIdMode='static'
添加到您的按钮,从您的事件处理程序返回false并在您的OK按钮回调中尝试此操作
OK: function() {
$(this).dialog('close');
__doPostBack('btnModalPopup','OnClick');
}