【问题标题】:ASP Button Click not fire in server sideASP 按钮单击在服务器端未触发
【发布时间】:2014-07-20 04:11:32
【问题描述】:

当我尝试在引导模式中触发按钮时出现问题, 这是我第一次出现这个问题,我不知道原因

                <div class="modal fade" id="cancelModal" tabindex="-1" role="dialog"      aria-labelledby="myModalLabel"
        aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header modal-header-primary">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h3><i class="glyphicon glyphicon-calendar"></i> ביטול שיעור</h3>
                </div>
                <div class="modal-body">
                    <asp:UpdatePanel ID="UpdatePanel4" runat="server">
                        <ContentTemplate>
                            <div class="form-group">
                                <label for="txtNewDay">
                                    סיבת הביטול:</label>
                            <asp:TextBox ID="CancelationReasonTxt" runat="server" CssClass ="form-control" TextMode="MultiLine" Rows="10"></asp:TextBox>
                        </div>
                        </ContentTemplate>
                        <Triggers>
                            <asp:AsyncPostBackTrigger ControlID="CancelButton" EventName="Click" />
                        </Triggers>
                    </asp:UpdatePanel>
                </div>
                <div class="modal-footer">
                   <asp:Button runat="server" CssClass="btn btn-info" ID="CancelButton" OnClick="CancelButton_OnClick"/>
                    <button class="btn btn-info" data-dismiss="modal" aria-hidden="true">
                        סגור</button>
                </div>
            </div>
        </div>
    </div>

按钮“CancelButton”不会触发服务器端点击“CancelButton_OnClick”事件。

非常感谢

编辑: 当我移除触发器时,我得到了:

【问题讨论】:

    标签: javascript asp.net twitter-bootstrap onclick modal-dialog


    【解决方案1】:

    设置UpdateMode="conditional"。默认情况下它是 UpdateMode="Always"

    <asp:UpdatePanel ID="UpdatePanel4" UpdateMode="Conditional" runat="server">
    

    From MSDN

    如果 UpdateMode 属性设置为 Conditional,并且出现以下情况之一:

    1. 您显式调用 UpdatePanel 控件的 Update 方法。

    2. 回发是由使用 UpdatePanel 控件的 Triggers 属性定义为触发器的控件引起的。在这种情况下,控件显式触发面板内容的更新。该控件可以位于定义触发器的 UpdatePanel 控件内部或外部。

    3. ChildrenAsTriggers 属性设置为 true,并且 UpdatePanel 控件的子控件会导致回发。嵌套的 UpdatePanel 控件的子控件不会导致对外部 UpdatePanel 控件的更新,除非它被明确定义为触发器。

    【讨论】:

    • @user1940350,您确定在页面中添加了脚本管理器吗?
    • 是的,我确定。我在页面中有更多的模式和更新面板可以正常工作
    • 因为我在日历更新面板中添加了按钮单击的触发器,并且代码工作正常
    【解决方案2】:

    我真的不知道为什么,但是我在异常中为控件添加了触发器,现在取消按钮被触发并且更新面板工作正常。

    谢谢大家

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多