javascript-使用动态创建的输入字段插入多条记录

基本上这就是我在将新记录保存到数据库时使用eloqouent所做的工作(请参阅下文)

$item = new item();
$item->name = $request->name;
$item->description = $request->description;
$item->rating = $request->rating;
$item->save();

但是我遇到了动态创建输入字段的场景,所以这是我的脚本

$(document).on("click", "#create_input", function(){
    $("form fieldset").append('<input type="text" name="name" value="" /><input type="text" name="description" value="" /><input type="text" name="rating" value="" />');
});

而我的认格式是(请参阅下文)

<button id="#create_input">Create new field</button>
<form action="{{ url('/item/add') }}" method="post">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
    <fieldset>
        <input type="text" name="name" value="" />
        <input type="text" name="description" value="" />
        <input type="text" name="rating" value="" />
    </fieldset>
    <button>Save</button>
</form>

因此,如果用户单击“创建新字段”按钮,则会将另一个输入字段(名称,描述,等级)添加到表单字段集中.

因此,如何像保存两个记录一样保存它(假设我有两组名称,描述,等级的字段集)?取决于当前表单中存在的字段数,然后取决于插入数,例如我有4个评分,描述,评分字段集,然后将插入4条记录.有什么想法吗?

解决方法:

只需在输入字段的名称加上[],例如您的表单以及javascript click事件处理程序中的name =“ discription []”.

然后在保存部分中使用循环

$c = count($request->name[]);
for($i=0;$i<$c;$i++){
   $item = new item();
   $item->name = $request->name[$i];
   $item->description = $request->description[$i];
   $item->rating = $request->rating[$i];
   $item->save();
}

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...