我需要在jQuery模式对话框中为asp.net按钮做回帖。我有的标记是这样的
<div id="content">
<h1>
Join Our Community</h1>`enter code here`
<hr />
Some Context..
<br />
<br />
Some Context..
<hr />
<br />
<!-- Modal Dialog -->
<a id="tos" href="#serviceterms" title="You must agree with our tems of service.">Click
HERE to Agree to our Terms </a>
<div style="display: none">
<div id="serviceterms" style="width: 440px; height: 250px; overflow: auto;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
<br />
<br />
Some Context..
<br />
<br />
<hr />
<input type="button" value="Yes" onclick="ToS_Agree()" />
<input type="button" value="No" onclick="ToS_NotAgree()" />
</div>
</div>
<br />
<br />
<asp:Button ID="HiddenButton" runat="server" Text="Button" OnClick="Button1_Click" />
<asp:Button ID="SubmitButton" runat="server" Text="Submit Form" Enabled="False" ClientIDMode="Static"
OnClick="SubmitButton_Click" />
<br />
<br />
<asp:Label ID="LabelResult" runat="server" Text=""></asp:Label>
在jQuery部分中,代码类似于
$(document).ready(function () {
$("#tos").fancybox({
'titlePosition': 'inside',
'modal': 'true',enter code here
'transitionIn': 'none',
'transitionOut': 'none'
});
});
function ToS_Agree() {
$('#SubmitButton').removeAttr('disabled');
__doPostBack('<%# HiddenButton.ClientID %>', '')
}
function ToS_NotAgree() {
$('#SubmitButton').attr('disabled', 'disabled');
$.fancybox.close();
}
问题:当我点击模态对话框中的“是”按钮时,它正确回发。但是它将我引导到page_load事件主体并且不会转到Button1_Click主体。请帮帮我。我个人认为必须有一种方法可以使用jQuery来获取我想要的事件主体。
答案 0 :(得分:3)
带有#
符号的表达式是数据绑定表达式。它只会评估DataBind()
被调用。使用=
符号:
__doPostBack('<%= HiddenButton.UniqueID %>', '')
答案 1 :(得分:0)
而不是:
__doPostBack('<%# HiddenButton.ClientID %>', '')
这样做:
$("#<%=HiddenButton.ClientID%>").click();
它会点击点击按钮并触发服务器端事件。