我是jQuery最新闻的人。我需要显示对话框以获取用户响应。如果使用点击确认,我需要在服务器上更新数据库。我找到了示例jQuery dialog Confirm-JSFiddle并遵循了代码。但是,在用户单击确认后,它不会回发到服务器。有人会告诉我如何解决它。
有我的jQuery脚本代码:
$(document).ready(function() {
$("#dialog-confirm").dialog({
autoOpen: false,
modal: true
});
});
$(function() {
$("#dialog-confirm").dialog({
autoOpen: false,
modal: true,
buttons : {
"Confirm" : function() {
$(this).dialog("close");
return true;
},
"Cancel" : function() {
$(this).dialog("close");
return false;
}
}
});
$("#Button1").on("click", function(e) {
e.preventDefault();
$("#dialog-confirm").dialog("open");
});
});
vb.net上有代码
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim i As Integer = 0
End Sub
aspx页面上有按钮
<asp:button id="Button1" runat="server" text="test" visible="true" />
答案 0 :(得分:0)
您只需要一步即可使用appendTo
函数与目标表单绑定来进行回发:
$("#Button1").on("click", function(e) {
e.preventDefault();
$("#dialog-confirm").dialog("open");
$("#dialog-confirm").parent().appendTo($("form:first"));
});
<asp:Button id="Button1" runat="server" text="test" visible="true" OnClick="Button1_Click" />
当然,如果您使用动态客户端ID(ClientIDMode="Static"
处没有asp:Button
属性),则需要使用ClientID
而不是按钮的服务器ID :
$("#<%= Button1.ClientID %>").on("click", function(e) {
e.preventDefault();
$("#dialog-confirm").dialog("open");
$("#dialog-confirm").parent().appendTo($("form:first"));
});
或者您可以将appendTo
嵌入dialog
设置(使用jQuery 1.10及更高版本):
$("#dialog-confirm").dialog({
autoOpen: false,
modal: true,
buttons : {
"Confirm" : function() {
$(this).dialog("close");
return true;
},
"Cancel" : function() {
$(this).dialog("close");
return false;
}
},
appendTo: "form" // append this setting
});
如果appendTo
无法使用您的网页,请尝试__doPostBack
方法(但不保证可以与所有浏览器配合使用):
__doPostBack('<%= Button1.UniqueID %>', '');
类似问题: