【问题标题】:html/php form at least 1 field requiredhtml/php 表单至少需要 1 个字段
【发布时间】:2014-01-20 22:42:28
【问题描述】:

我正在制作一个用于订购某些产品的表格。

但是,我有 11 个字段,客户可以在其中输入他们想要的产品数量。

 <tr>
    <td>Pizza Fungi</td>
    <td><input type="text" name="PizzaFungi" size="3" maxlength="3"></td>
 </tr>

当他们按下提交时,它会重定向到显示他们所有信息的另一个页面——姓名、地址、电话号码,最后是他们填写的产品。

但这是我的问题,当他们什么都不填时,它只会重定向到另一个页面,那里什么都不会显示(显然)。

我需要某种验证器,我可以在其中选择一组字段。 (只有项目而不是姓名、电话号码等)它会返回某种错误。

非常感谢,如果您遗漏任何信息,我会编辑。

编辑:这不仅仅是 1 个比萨——这只是 11 种产品中的一种。我怎样才能做到只需要这 11 个中的 1 个?

【问题讨论】:

    标签: php html forms validation


    【解决方案1】:

    如果条件是你的朋友。

    if(!empty($_POST['PizzaFungi'])) {
        //1 field is filled
    }
    

    【讨论】:

      【解决方案2】:

      使用 HTML5 的必需属性。

      <input type="text" name="PizzaFungi" size="3" maxlength="3" required></td>
      

      根据您的要求,我使用 jQuery 来检查至少一个字段是否已填写。

       <script>
        var count=0;
        $(document).ready(function(){
      
              $("form").submit(function(){
      
                 $("input[type=text]").each(function(){
      
                     if($(this).val()=="")count++
             });
            var isAllowToSubmit=(count<11);
            if(!isAllowToSubmit) alert("Please fill all the fields")
            count=0;  
            return isAllowToSubmit;
              }); 
           });
          </script>
      

      【讨论】:

      • 不能操纵它,所以它基本上不是验证吗?
      • 我只是建议使用 HTML5 的高级功能,它具有相同的预定义属性。谢谢。
      • 是的。它使特定的输入字段需要与预定义的对话框显示填充该字段的 HTML5 错误
      • 我不知道我的问题是不是不够清楚。但是我的表单中有 11 个产品,其中至少有 1 个需要在表单提交之前填写其输入字段。这个比萨真菌是我表单中的一个例子,实际上有 11 个不同的输入字段。因此,使这个特定的需要并没有真正帮助我
      猜你喜欢
      • 2017-06-02
      • 2011-07-21
      • 1970-01-01
      • 1970-01-01
      • 2016-06-29
      • 2020-08-20
      • 2015-08-12
      • 1970-01-01
      • 2014-06-17
      相关资源
      最近更新 更多