按钮需要单击两次才能触发事件

时间:2011-08-17 09:12:33

标签: c# asp.net iframe

我在iFrame中有一个简单的ASP.NET按钮,出于奇怪的原因,我必须点击它两次才能触发事件。

<asp:Button ID="btnSaveComment" runat="server" Text="Add Comment" 
            CssClass="button"
            OnClick="btnSaveComment_Click"
            ValidationGroup="add" />

protected void btnSaveComment_Click(object sender, EventArgs e)
{            
     AddComment();
}

2 个答案:

答案 0 :(得分:4)

我怀疑当你最初点击按钮上方的区域时,你将焦点放在iframe(也就是说,其中的页面),然后在第二次点击时,鼠标可以与按钮。

另一方面,如果页面似乎回发但实际上没有做任何事情,直到第二次点击,那么它可能与页面生命周期有关,正如@AndroidHustle的回答评论所示。

编辑:

为了测试框架是否聚焦的理论,尝试通过脚本给予焦点。以下内容可能有所帮助:

<script type="text/javascript">
    document.getElementById("iFrameId").focus();
</script>

答案 1 :(得分:0)

我遇到了同样的问题。以下是我解决它的方法:

        $("#MainContent_Button1").hover(function (event) {
            $("#MainContent_Button1").click()
        });

现在它只需要点击一下,按钮的功能就像它应该的那样。

<asp:Button ID="Button1" runat="server" Text="Save Payment Plan" OnClick="Button1_Click" />
相关问题