javascript - 验证两个文本框都应该被填充还是都应该为空

标签 javascript asp.net

我有两个文本框。我需要验证两个文本框是否都已填充,只有一个文本框无法填充。

<asp:TextBox ID="testTxtName" runat="server" />
<asp:TextBox ID="testTxtGroup" runat="server" />

我需要在单击提交按钮时进行此验证。 因此,用户必须填写两个文本框,或者两个文本框都应留空。仅填写一个文本框是错误的。我如何使用 JavaScript 来做到这一点?

最佳答案

假设您已经处理了服务器端验证,这是您可以在客户端处理它的一种方法。

<form onSubmit="validateForm">

function validateForm() {
    var textField1Value = document.getElementById('testTxtName').value;
    var textField2Value = document.getElementById('testTxtGroup').value;

    if ((textField1Value && !textField2Value) || (!textField1Value && textField2Value)) {
        return false;
    }

    return true;
}

对此的一些说明:

  • 这是有效的,因为在 JS 中,空字符串是一个 false 值
  • 从附加到 onSubmit 的函数返回 false事件将阻止表单提交。
  • 显然,您需要显示某种错误消息,而不仅仅是默默地失败。

祝你好运!

关于javascript - 验证两个文本框都应该被填充还是都应该为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33830484/

相关文章:

javascript - Discord.js - 尝试等待异步进程并允许包装器的递归调用

javascript - 在 Django 中使用 SIMPLE javascript 确认删除

jquery - ASP.NET 中的交互式仪表板

javascript - 设置为 req 并在另一条路由中访问

javascript - jQuery 按顺序迭代整数

c# - 将 FTP 服务器上现有的文件附加到 C# .NET 中的邮件

c# - Google directions api 网络服务 - 在 map 上显示响应。是否可以?

ASP.NET - 是否可以从服务器代码触发回发?

javascript - 对 web 方法的 Ajax 调用给出错误 500 内部服务器错误

javascript - React.js block 元素的双向绑定(bind)