将自动生成的输入名称传递给laravel旧变量

时间:2017-06-10 21:27:32

标签: javascript php laravel

我有以下功能,可以将输入添加到表单

    <script>
    var id = 2;
    function addNewItem(){
        var div1 = $("<div class='row'></div>");

        var inputGroup1 = $("<p class='form-group col-sm-6'></p>");
        inputGroup1.html("<input type='text' placeholder='نام کالا' class='form-control' id='" + id + "' name='" + id +"' value='{{old()}}'>");

        var inputGroup2 = $("<p class='form-group col-sm-3'></p>");
        inputGroup2.html("<input type='text' placeholder='قیمت کالا' class='form-control' id='g" + id +"' name='g" + id +"' >");

        var inputGroup3 = $("<p class='form-group col-sm-3'></p>");
        inputGroup3.html("<input type='number' placeholder='تعداد کالا' class='form-control' id='t" + id +"' name='t" + id +"' >");

        var lineBreak = $("<hr class='visible-xs-block'>");

        div1.append(inputGroup1,inputGroup2,inputGroup3,lineBreak);
        $("#sendBtn").before(div1);
        $('#t'+id).spinner();

        $("#" + id).autocomplete({
            source : items,
        });

        id++;
    }


   </script>

但我想使用自动生成的输入名称,它代表Laravel旧变量中名为“id”的javascript变量,例如{{old('id')}}

1 个答案:

答案 0 :(得分:0)

对于那些可能有类似问题的人,我使用以下代码来解决这个问题

      <script>
        @if(!empty(session('count')))
            @php
                $id = 2;
            @endphp

            @for($i=0 ; $i<session('count') ; $i++)

                var div1 = $("<div class='row'></div>");
                var inputGroup1 = $("<p class='form-group col-sm-6'></p>");
                inputGroup1.html("<input type='text' placeholder='نام کالا' class='form-control' id='" + id + "' name='" + id +"' value='{{old("$id")}}' >");

                var inputGroup2 = $("<p class='form-group col-sm-3'></p>");
                inputGroup2.html("<input type='text' placeholder='قیمت کالا' class='form-control' id='g" + id +"' name='g" + id +"' value='{{old("g$id")}}' >");

                var inputGroup3 = $("<p class='form-group col-sm-3'></p>");
                inputGroup3.html("<input type='number' placeholder='تعداد کالا' class='form-control' id='t" + id +"' name='t" + id +"' value='{{old("t$id")}}'>");

                var lineBreak = $("<hr class='visible-xs-block'>");

                div1.append(inputGroup1,inputGroup2,inputGroup3,lineBreak);
                $("#sendBtn").before(div1);
                $('#t'+id).spinner();

                $("#" + id).autocomplete({
                    source : items,
                });

                id++;
                @php
                    $id++;
                @endphp
            @endfor
        @endif
     </script>