【问题标题】:Clear a text box if validation fails?如果验证失败,清除文本框?
【发布时间】:2012-11-19 22:19:18
【问题描述】:

当比较验证失败时,我试图清除两个不同的文本框。我曾尝试使用 C# 代码中的 .clear 方法来执行此操作,但 VS 不允许在 Web 表单中使用它。我正在使用 Visual Studio 2010,几乎没有任何 asp.net 经验。任何帮助将不胜感激。

当用户在validator.isvalid 的Else 语句中按下“提交”时,我尝试了多种方式清除文本框。但似乎除非整个页面有效,否则该程序不会触发。

这是提交按钮的代码:

    If valCompPassword.IsValid Then
        If Page.IsValid Then
            lblWelcome.Text = "Welcome " & txtNameFull.Text & "!"
        End If
    Else
        txtPassword.Text = ""
    End If

是否有绕过验证并启动程序的方法?

【问题讨论】:

  • 发布一些您尝试过的代码。它会有所帮助。
  • 如果.clear不起作用,你试过texbox.text = "";吗?
  • 是的,我有,它不适用于那里的验证器。
  • 刚刚做了,谢谢你的提示。

标签: c# asp.net validation textbox


【解决方案1】:

您是否检查过控件的属性(即文本框、按钮等)CausesValidationhttp://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.causesvalidation.aspx

【讨论】:

  • 我之前确实尝试过,但没有成功,但我只是对代码进行了一些更改,然后再次尝试,它似乎工作正常。我什至不需要代码来清除文本框。非常感谢!
【解决方案2】:

将提交按钮的“原因验证”属性设置为 false 会清除密码文本框。不太清楚为什么或如何清除那些我认为它正在清除“文本模式”属性设置为密码的文本框。如果您仍想使用按钮进行验证,则必须在按钮单击代码中使用“Page.Validate”过程。

这是按钮的 C# 代码:

    Page.Validate()
    If Page.IsValid Then
        lblWelcome.Text = "Welcome " & txtNameFull.Text & "!"
    End If

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多