【问题标题】:jQuery validation for forms getting with foreach使用 foreach 获取表单的 jQuery 验证
【发布时间】:2016-09-26 13:05:21
【问题描述】:
<?php 
   foreach($matches as $match) {
        ?><form class="form-inline bet" method="POST" action="{{ url('/bet/process-team') }}">
        {!! csrf_field() !!}
        <input class="form-control" type="text" id="price" name="price" />
        <input type="hidden" name="id" value="<?php echo $match->id; ?>" />
        <input class="form-control" type="submit" value="submit" />
        </form>
        <?php
  }
?>

jQuery:

$(".bet").validate({    
    rules: {
        price: {
            required: true,
            number: true,
        },
    }, 
});

通过此验证,即使我尝试提交任何表单,也需要输入第一个表单的价格。我只需要验证该表单的价格输入。

【问题讨论】:

    标签: php jquery forms validation


    【解决方案1】:

    您需要为每个表单附加一个单独的验证器 - 目前您正在为所有表单附加一个验证器。

    $('.bet').each( function(){
        var form = $(this);    // this is important, make the "form" local inside the function, otherwise $(this) changes scope each loop!
        form.validate({
            rules: {
                price: {
                    required:true,
                    number:true,
                }
           }
        });
    });
    

    【讨论】:

      【解决方案2】:

      首先。你不要在 foreach 中关闭你的表单标签。

      第二。您的类 .bet 不是唯一的,因此 foreach 中的每个表单都将具有相同的类。尝试使您的 jquery 的功能。并在提交时使用唯一 id 调用它

      希望我正确理解了您的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-04-27
        • 1970-01-01
        相关资源
        最近更新 更多