繁体   English   中英

使用ASP.NET中的确认窗口弹出窗口以及RequiredFieldValidator删除数据

[英]Deleting data using confirmation window popup in ASP.NET and with RequiredFieldValidator

我正在使用以下代码使用确认从数据库中删除记录。

ASP.NET

<asp:TextBox ID="text_delete" Width="70%" Height="60px" ValidationGroup="del" CssClass="textbox" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="required_desc" CssClass="validator" ValidationGroup="del" ControlToValidate="text_delete" ErrorMessage="Reason Required" runat="server">Reason Required</asp:RequiredFieldValidator>
<asp:Button ID="button_delete" CssClass="button" ValidationGroup="del" Text="Delete" runat="server" OnClientClick="Confirm()" OnClick="button_delete_Click" />

JavaScript的

<script type = "text/javascript">
    function Confirm() {
        var confirm_value = document.createElement("INPUT");
        confirm_value.type = "hidden";
        confirm_value.name = "confirm_value";
        if (confirm("Do you want to delete this data?")) {
            confirm_value.value = "Yes";
        } else {
            confirm_value.value = "No";
        }
        document.forms[0].appendChild(confirm_value);
    }
</script>

C#

protected void button_delete_Click(object sender, EventArgs e)
{
    string confirmValue = Request.Form["confirm_value"];
    if (confirmValue == "Yes")
    {
        // Delete the data
    }
    if (confirmValue == "No")
    {
        // Do not delete data
    }
}

但是在这里我希望用户首先在文本框中输入要删除的原因,然后才显示确认弹出窗口。 即使我使用了必填字段验证器,也仅在弹出窗口之后才触发验证器。 我怎样才能首先触发验证器,并且只有在输入了原因后,才会出现用于删除确认的弹出窗口。 我怎样才能做到这一点?

如果想更具体一些,可以使用Page_ClientValidate()或Page_ClientValidate(“ group name”)来在脚本中调用所需的字段验证。

if(Page_ClientValidate()){
     ....popup confirmation code
     ....
}  

与JavaScript一起使用RequiredFieldValidator

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM