简体   繁体   English

使用数组将数据从View(Blade)传递到Laravel中的Controller

[英]Passing data using array from View (Blade) to Controller in laravel

I have a blade form which has a repeater input box and a select box, the repeater works fine but how do i pass the data from those fields to back-end controller in laravel? 我有一个带有中继器输入框和选择框的刀片形式,该中继器工作正常,但是如何将这些字段中的数据传递给laravel中的后端控制器?

add.balde.php add.balde.php

<!--begin::Add-Invoice-Form-->
<form class="m-form m-form--fit m-form--label-align-right m-form--group-seperator-dashed" action="{{route('store_invoice')}}" method="POST" enctype="multipart/form-data">
    {{ csrf_field() }}
    <div class="m-portlet__body">
        <div class="form-group m-form__group row">

            <div class="col-lg-4">
                <label>
                    Customer Name:
                </label>
                <select class="form-control m-select2" id="m_select2_1" name="customerId">
                    @foreach($customer_list as $customer)
                        <option value=" {{ $customer->id }} ">
                        {{ $customer->fName }} {{ $customer->mName }} {{ $customer->lName }}
                        </option>
                    @endforeach  
                </select>
            </div>
            <div class="col-lg-4">
                <label>
                    Invoice Type:
                </label>
                <div class="m-radio-inline">
                    <label class="m-radio m-radio--solid">
                        <input type="radio" name="invoiceType" checked value="billable">
                        Billable
                        <span></span>
                    </label>
                    <label class="m-radio m-radio--solid">
                        <input type="radio" name="invoiceType" value="nonbillable">
                        Non Billable
                        <span></span>
                    </label>
                </div>
            </div>
        </div>

     <div id="m_repeater_1">

        <div class="form-group row" id="m_repeater_1">
            <div data-repeater-list="" class="col-lg-12">
                <div data-repeater-item class="form-group m-form__group row align-items-center">
                    <div class="col-lg-4">
                <label>
                    Summary Number:
                </label>
                <select class="form-control m-select2" id="m_select2_2" name="certificateId[]">
                    @foreach($certificate_list as $certificate)
                        <option value=" {{ $certificate->id }} ">
                        {{ $certificate->summary_no }} ( {{ $certificate->certificateType() }} )
                        </option>
                    @endforeach  
                </select>
            </div>
                    <div class="col-lg-3">
                                <label>
                                    Rate:
                                </label>
                                <input type="number" class="form-control m-input" name="rate" placeholder="Enter rate">
                    </div>
                    <div class="col-lg-3">
                        <br/>
                        <div data-repeater-delete="" class="btn btn btn-danger m-btn m-btn--icon">
                            <span>
                                <i class="la la-trash-o"></i>
                                <span>
                                    Remove
                                </span>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="m-form__group form-group row">
            <div class="col-lg-4">
                <div data-repeater-create="" class="btn btn btn-warning m-btn m-btn--icon">
                    <span>
                        <i class="la la-plus"></i>
                        <span>
                            Add
                        </span>
                    </span>
                </div>
            </div>
        </div></div>


    </div>

    <div class="m-portlet__foot m-portlet__no-border m-portlet__foot--fit">
        <div class="m-form__actions m-form__actions--solid">
            <div class="row">
                <div class="col-lg-4"></div>
                <div class="col-lg-8">
                    <button type="submit" class="btn btn-primary">
                        Submit
                    </button>
                    <button type="reset" class="btn btn-secondary">
                        Cancel
                    </button>
                </div>
            </div>
        </div>
    </div>
</form>
<!--end::Add-Invoice-Form-->

How do I send the values in array format when multiple select box have been filed using repeater? 使用中继器提交多个选择框后,如何以数组格式发送值? This images shows the UI for the form 此图显示了表单的UI

Thank you 谢谢

you can try something like this 你可以尝试这样的事情

 <input type="text" value="val" name="somename[]">
 <select name="someSelectName[]">
    <option value="value">select 1
    </option> 
 </select>

on server side you will receive selected values as array with given name 在服务器端,您将收到具有给定名称的选定值作为数组

Change your 改变你的

<div data-repeater-list="" class="col-lg-12">

To

<div data-repeater-list="arrayName" class="col-lg-12">

and It should work. 并且它应该工作。

This makes the all the input names to have an array format of arrayName[number][input] and the number increments for each input and finally in the request sent you will have all the inputs in the arrayName 这将使所有输入名称具有arrayName[number][input]的数组格式,并且每个输入的数字递增,最终在发送的请求中,所有输入名称都将在arrayName

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 结合使用chart.js和laravel从控制器传递数据到视图 - Using chart.js with laravel passing data from controller to view AngularJS使用Laravel PHP调用将数据从视图传递到控制器 - AngularJS Passing data from view to controller using Laravel PHP call 使用 Laravel 中的 Ajax 将数据从视图传递到 controller - Passing data from view to controller using Ajax in Laravel Laravel 5.5使用来自控制器的数据在刀片视图中呈现React组件 - Laravel 5.5 render a React component in a blade view with data from the controller 将JavaScript数组从视图传递到Laravel控制器 - Passing JavaScript array from view to Laravel controller 如何将数组数据从 controller 传递到刀片文件 Laravel - How to pass an array data from controller to blade file Laravel 使用Javascript在Laravel刀片视图中以数组显示动态数据时出现问题 - Problem displaying dynamic data in an array in Laravel blade view using Javascript 在 Laravel 中将数据从 Blade 传递到模态 - Passing data from Blade to modal in Laravel 将数据从laravel传递到刀片视图中的组件 - Pass data from laravel to a component in blade view 通过 ajax onchange 事件将数据从 laravel 视图传递到控制器 - passing data from laravel view to controller via ajax onchange event
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM