【问题标题】:Laravel checkbox validation (O or 1)Laravel 复选框验证(O 或 1)
【发布时间】:2017-03-19 16:52:33
【问题描述】:

我在这里验证一个复选框,用户必须只选择一个。

  <label class="col-md-3 control-label" for="checkboxes">Can Resume </label>
  <div class="col-md-4">
      <label class="checkbox-inline" for="checkboxes-0">
        <input type="checkbox" name="canRes[]" id="checkboxes-0" value="1">
                    Yes
      </label>
      <label class="checkbox-inline" for="checkboxes-1">
        <input type="checkbox" name="cannotRes[]" id="checkboxes-1" value="0">
                    No
      </label>
  </div>

在服务器端,我正在验证控制器方法:

$validator = Validator::make(Input::get(),
[
    'canRes' => 'required',
    'cannotRes' => 'required'

 ]);

验证失败,因为一个被检查,另一个是required 我想要一个被检查。 cannotRescanRes

我怎样才能做到这一点?

【问题讨论】:

    标签: php laravel validation laravel-5.3


    【解决方案1】:

    您可以使用验证方法required_without_all

    $validator = Validator::make(Input::get(),
    [
        'canRes' => 'required_without_all:cannotResume',
        'cannotRes' => 'required_without_all:canResume'
    
    ]);
    

    希望对你有所帮助。

    【讨论】:

      【解决方案2】:

      对于您的方案,您需要为 checkbox 使用相同的名称。你可以试试这个:

      <label class="col-md-3 control-label" for="checkboxes">Can Resume </label>
        <div class="col-md-4">
            <label class="checkbox-inline" for="checkboxes-0">
              <input type="checkbox" name="canRes" id="checkboxes-0" value="1">
                          Yes
            </label>
            <label class="checkbox-inline" for="checkboxes-1">
              <input type="checkbox" name="canRes" id="checkboxes-1" value="0">
                          No
            </label>
        </div>
      

      在你的验证函数中你应该使用这个规则:

      $validator = Validator::make($request->all(),
      [
          'canRes' => 'required',    
       ]);
      

      【讨论】:

        猜你喜欢
        • 2016-09-17
        • 2017-05-30
        • 2013-04-25
        • 2016-06-21
        • 2017-06-10
        • 2016-07-27
        • 1970-01-01
        • 2017-05-18
        • 1970-01-01
        相关资源
        最近更新 更多