动态添加字段到 laravel 表单

Posted

技术标签:

【中文标题】动态添加字段到 laravel 表单【英文标题】:Add fields to laravel form dynamically 【发布时间】:2016-08-26 16:32:56 【问题描述】:

我有一个从用户那里收集信息的 Laravel 表单。在表单的一部分上,我想添加一个按钮,该按钮将添加一行,其中包含用户可以填写的 4 个文本框(每个名称不同)。每次用户单击该按钮时,应添加另一行 4 个文本框.

在理想情况下,代码将是通过单击按钮调用的 javascript 函数(因此我可以稍后重用它)。我似乎看不到如何将事件处理程序添加到 laravel 表单上的按钮单击。

【问题讨论】:

请展示您的代码,这将有助于更轻松地识别您的问题 【参考方案1】:

这行得通 HTML

<div class="input_fields_wrap">
    <button class="add_field_button">Add More Fields</button>
    <div><input type="text" name="mytext[]"></div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>

JS

        $(document).ready(function() 
    var max_fields      = 10; //maximum input boxes allowed
    var wrapper         = $(".input_fields_wrap"); //Fields wrapper
    var add_button      = $(".add_field_button"); //Add button ID

    var x = 1; //initlal text box count
    $(add_button).click(function(e) //on add input button click
        e.preventDefault();
        if(x < max_fields) //max input box allowed
            x++; //text box increment
            $("#rm").remove(); 

            $(wrapper).append('<div id="divs"><input type="text" name="mytext[]"/>'); //add input box
             $(wrapper).append('<div id="divs"><input type="text" name="mytext[]"/>'); //add input box
              $(wrapper).append('<div id="divs"><input type="text" name="mytext[]"/></div>'); //add input box
               $(wrapper).append('<div id="divs"><input type="text" name="mytext[]"/><a href="#" id="rm" class="remove_field">Remove</a></div>'); //add input box
                $(wrapper).append('<br>')
        
    );

    $(wrapper).on("click",".remove_field", function(e) //user click on remove text
        e.preventDefault(); $("#divs").remove(); x--;
        $("#divs").remove(); x--;
        $("#divs").remove(); x--;
        $("#divs").remove(); x--;

    )
);

名称将是 mytext(第一个输入名称 = mytest[1] 第二个 mytest[2] ...等) 您可以将 X 变量添加到表单中,以便知道控制器中有多少输入

html 中,您可以将类型更改为隐藏,以便在用户点击之前拥有任何输入字段

检查结果这个我n JSFiddle

【讨论】:

以上是关于动态添加字段到 laravel 表单的主要内容,如果未能解决你的问题,请参考以下文章

在 Laravel 5 中验证动态添加的输入字段

如何使laravel中的动态表单字段可填写

将 jQuery 验证规则添加到动态生成的表单元素时出错

在 Laravel 5 中将多行从动态表单保存到数据库

动态添加字段到表单

将 Telerik Datepicker 添加到动态添加的表单字段