c# - 如何检查 ASP.NET 页面中是否没有或所有文本框都输入了文本?

标签 c# asp.net

我正在创建一个发票应用程序,在用户可以输入行项目的部分中,某些字段将包括:数量、价格、扩展价格、说明等。

如果用户在任何字段中输入内容,则相应字段是必需的,但如果没有在任何字段中输入任何数据,则相应字段中不需要任何内容​​。在不执行一堆 if 语句的情况下执行此操作的有效且干净的方法是什么?

我想这就像只有一个文本框有文本时进行验证。

最佳答案

您可以在 CustomValidator 的 ServerValidate 事件中尝试类似的操作。

// test for all textboxes having some text in them...
e.IsValid = (from TextBox c in this.Controls
             where c is TextBox
             select c).All(tb => !string.IsNullOrEmpty(tb.Text));

这可能需要一些修改才能正确 - 但你明白了。进行相应更改以测试所有文本框是否为空白。

您还可以在 CustomValidator 中使用 jQuery 进行客户端验证

function clientValidate(sender, e) {

    // get array of textboxes with a common css class
    var textBoxes = $("#SomeCssSelector input").val();

    // loop here to test for having text or no text.
    e.IsValid = ... ;


}

关于c# - 如何检查 ASP.NET 页面中是否没有或所有文本框都输入了文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/940755/

相关文章:

asp.net - 检查线程是否仍在运行

asp.net - Css 在 asp.net mvc3 Razor Views 中不能正常工作

c# - 需要以编程方式编辑远程机器上的文件

c# - Entity Framework 6 添加/更新 - 编辑时出错并尝试将编辑的实体添加为新实体

c# - 当 token 或源都可用时,我应该使用 IsCancellationRequested 吗?

asp.net - 为什么 Visual Studio 默认为 WebForms 提供 Page_Load?

c# - 如何将列表项绑定(bind)到gridview

c# - 如何构建我的网站的移动(平板电脑)友好版本?

c# - pdfiumViewer 的库依赖项?

c# - 在 TextBlock 中将文本的一部分设为粗体