c# - 在 asp.net 中验证表单数据后如何获取 javascript 确认框?

标签 c# javascript asp.net

我在我的 asp.net web 应用程序中遇到了一个问题,我需要在单击 更新 按钮时显示一个 java 脚本确认框,这是根据给我的要求。

目前我使用的是onclient click

<asp:Button ID="btnCustomerUpdate" runat="server" CssClass="applybuttonstyle" 
            Text="Update" onclick="btnCustomerUpdate_Click" 
            OnClientClick="return confirm('Do you really want to update?');"/>

它工作正常,但问题是我还在我的表单字段上应用了一些验证控件,所以如果用户将任何字段留空并单击更新按钮,它会显示 javascript 确认框和该表单字段下方的验证消息。

除非所有验证都通过,否则它不应该显示确认框,这不是我们想要的行为。

我希望这是因为我在客户端点击时使用它,所以请告诉我一个更好的解决方案。

提前致谢。

最佳答案

您可以在自己的确认函数中使用Page_ClientValidate 来决定是否显示确认对话框。 像这样的东西:

function validateAndConfirm(message){
   var validated = Page_ClientValidate('group1');
   if (validated){
      return confirm(message); 
   }
}

在服务器上你会有这样的东西:

 <asp:textbox id="TextBox1" runat="server"/>
      <asp:requiredfieldvalidator ValidationGroup="group1"
                                                   ErrorText="Need to Fill in Value!"
                                                   ControlToValidate="TextBox1"
                                                   runat="server"/>

  <asp:textbox id="TextBox2" runat="server"/>
       <asp:requiredfieldvalidator ValidationGroup="group1"
                                                     ErrorText="Need to Fill in Value!"
                                                     ControlToValidate="TextBox2"
                                                     runat="server"/>

您的按钮代码将更改为:

<asp:Button ID="btnCustomerUpdate" runat="server" CssClass="applybuttonstyle" 
        Text="Update" onclick="btnCustomerUpdate_Click" ValidationGroup="group1"
        OnClientClick="return validateAndConfirm('Do you really want to update?');"/>

显然,我无法对此进行测试,但你明白了。

如果您将使用 Page_ClientValidate,您可能会发现 this SO question有用。

关于c# - 在 asp.net 中验证表单数据后如何获取 javascript 确认框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8641395/

相关文章:

javascript - 显示 asp 文本框中文本的提示

c# - 无法将 System.Linq 引用添加到网站应用程序

c# - ASP.NET 应用程序运行时如何将数据保留在内存( session )中?

c# - 在代码中,首先 "ies"(复数)是强制性的

c# - 如果URL不包含现有 Controller ,则404永远不会达到Application_Error

javascript - 选择导航到 URL 上的单选按钮

javascript - 如何创建 API 或指向我的 SVG 的链接以便其他网站可以显示它?

asp.net - 上传我的 ASP.NET 网站?

c# - 访问IsolatedStorageBackingStore时出现HRESULT 0X80131468的原因

c# - ServiceStack 中的索引输入