我在JavaScript对话框窗口中有一个asp:Button。如下面的代码所示,它具有一个名为DialogWindowButton_Click的OnClick事件。该事件没有触发,我已经在C#文件中放置了断点,甚至没有进入函数。我不知道为什么,并查看了其他论坛帖子以尝试解决这个问题。我有1)删除了按钮,然后重新创建了按钮和OnClick事件本身(这是行不通的),以及2)将CausesValidation =“ False”添加到了asp:Button标记中。两种方法均无效。我所拥有的如下所示:
<div style="margin:auto; width:100px; padding-bottom:15px;">
<asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry"
OnClick="DialogWindowButton_Click" CausesValidation="False"/>
</div>
然后在C#文件中,我有:
...
protected void Page_Load(object sender, EventArgs e)
{
}
protected void DialogWindowButton_Click(object sender, EventArgs e)
{
DialogWindowButton_ClickHelper();
...
}
protected AddressBookEntry DialogWindowButton_ClickHelper()
{
...
}
...
对于CodeBehind标签和Inherits标签,我都有正确的文件。在C#文件中,您可以看到原始的OnClick事件调用了直接在其下方定义的帮助器函数,但是没有达到DialogWindowButton_Click()顶部的断点。也没有构建错误。可能还有其他我想念的东西吗?谢谢!
答案 0 :(得分:1)
您需要将UseSubmitBehavior
设置为false
(默认为true):
<asp:Button ID="DialogWindowButton" runat="server" Text="Save Entry"
UseSubmitBehavior="False" OnClick="DialogWindowButton_Click" CausesValidation="False" />
来自Reference:
使用UseSubmitBehavior属性指定按钮控件是否 使用客户端浏览器的提交机制或ASP.NET回发 机制。默认情况下,此属性的值为true,导致 按钮控件使用浏览器的提交机制。如果指定 false,ASP.NET页面框架会将客户端脚本添加到页面 将表单发布到服务器。