【问题标题】:in javascript how to require multiple form fields when one is selected?在javascript中如何在选择一个表单字段时要求多个表单字段?
【发布时间】:2016-08-13 01:43:49
【问题描述】:

在一个 html5 页面中,我有 2 个标准格式的字段。我需要的是当用户在其中一个字段上选择以要求另一个字段中的数据时。提交时的任何空白字段都要求所有相关字段都包含数据。

当用户没有填写第二个字段时,这对于第一个字段来说是正常的。但是当第二个字段被填充并且第一个字段为空白时,它就不起作用了——它绕过了这个条件并进入了 checkSubmission 函数。

     <script language="javascript">

         function validateAndSend() {
        if (myform.field1.value != '' && myform.field2.value == '') {
            alert('You have to enter data in field2.');
            return false;
       } else if (myform.field2.value != '' && myform.field1.value == '') {
          alert('You have to enter data in field 1.');
          return false;
      } else {
       checkSubmission();
         }
     }

       function checkSubmission(){
       var r = confirm('Are you sure you are ready to submit?');
       if (r == true) {
        myform.submit();
        }else{
         return false;
       }
      }
    </script>

   The HTML -
    <form name="myform" action="mypage.jsp" method="post" onsubmit="validateAndSend();return false;">
      <select name="field1" id="textarea1">
     <option value=""></option>
     <option value="data1">data1 select</option>
    <option value="data2">data 2 select</option>
  </select>

  <input type="text" name="field2">

我还有多达 4 个多个字段,当用户选择其中一个时,它们应该再次相互关联;一旦在表单中选择了 4 个中的一个,它们都必须是必需的。

感谢任何帮助。

【问题讨论】:

  • 对于你的情况,我认为如果你能提供给我们小提琴会更好,例如JSfiddle。
  • 你的代码works for me.
  • 您是否尝试过在表单元素的html 处使用required 属性?
  • 也许你想到了这个。 jsfiddle.net/qfw77hez/2

标签: javascript jquery html forms jsp


【解决方案1】:

为什么不把required 放在你的输入字段上?

<input name="whatever" required>

不用javascript就可以搞定一切

【讨论】:

  • 这不适用于 OP 的要求,即“当用户在其中一个字段上选择以要求另一个字段中的数据时” - 在这种情况下,如果两个字段都是空白的,它应该通过验证。
  • 啊,我明白了。然后也许他可以在选择其中一个字段后使用 jquery 添加所需的属性
猜你喜欢
  • 2011-12-20
  • 1970-01-01
  • 1970-01-01
  • 2012-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-07
  • 1970-01-01
相关资源
最近更新 更多