【问题标题】:onclick not working if I add Onclient() on asp button如果我在 asp 按钮上添加 Onclient(),onclick 不起作用
【发布时间】:2016-06-23 05:09:07
【问题描述】:

我想在按钮单击时添加确认消息,但 btnUpdateEmail_Click 现在不起作用。

<asp:Button ID="btnSave" runat="server" UseSubmitBehavior="false" 
            Text="Update Import Email" ValidationGroup="groupValidation" 
            OnClientClick="return confirm('Are you sure you want to update 
            Import Email?');" OnClick="btnUpdateEmail_Click"   
            CssClass="btn-danger" Height="46px" Width="237px" 
            Font-Bold="true" />

【问题讨论】:

标签: c# asp.net


【解决方案1】:

您只需将 UseSubmitBehavior 的值从 false 更改为 true。

希望它能解决你的问题。

<asp:Button ID="btnSave" runat="server" UseSubmitBehavior="true" Text="Update Import Email" ValidationGroup="groupValidation" OnClientClick="return confirm('Are you sure you want to update Import Email?');" OnClick="btnUpdateEmail_Click"   CssClass="btn-danger" Height="46px" Width="237px" Font-Bold="true" />

【讨论】:

  • UseSubmitBehavior="false" 这究竟会做什么
  • 默认情况下,asp 按钮行为是在服务器上发布数据(提交行为),但如果您想禁用此行为并使其仅执行客户端工作,则可以使用 UseSubmitBehavior="false" 您可以使用 jquery ajax 方法从另一种方式实现这一点,其中您的按钮调用客户端 java-script 函数,然后使用 ajax 调用调用服务器端方法。但那代码太长了。
  • 我只是删除了 UseSubmitBehavior="true" 并且我的代码默认为 true
【解决方案2】:

使用 UseSubmitBehavior="true" 几乎成功了。请务必正确设置您的 OnClientClick 呼叫:

代码使用了OnClientClick="return Validate();",这是不正确的。它应该只是

<asp:Button ID="keyword" runat="server" Text="Search" TabIndex="1" 
OnClick="keywordSearch_Click" OnClientClick="if (!Validate()) { return false;};" />

如果设置不正确,OnClick 函数将不会触发。

还有click here,了解更多。

您也可以找到onclientclick-and-onclick-is-not-working-at-the-same-time

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-17
    • 1970-01-01
    • 2017-02-06
    • 1970-01-01
    • 2013-07-10
    • 2018-05-10
    • 1970-01-01
    相关资源
    最近更新 更多