Umgang mit Mehrfachauswahl-Dropdown-Formularen für jede Zeile bei der Implementierung dynamischer Formularspeicherung in Laravel
P粉301523298
2023-08-31 10:43:09
<p>In meinem Formular habe ich eine dynamische Tabelle mit Mehrfachauswahl-Dropdowns „color_id[]“ und „size_id[]“ mit demselben Namen in jeder Zeile. Ich weiß nicht, wie ich mehrere ausgewählte Werte als durch Kommas getrennte Werte in jeder in der Datenbank gespeicherten Zeile speichern kann. Ich habe hier versucht, in der Datenbank zu speichern, aber es hat nicht funktioniert. </p>
<p>HTML-Code: </p>
<pre class="brush:php;toolbar:false;"><table><tbody><td><select name="color_id[]" ;color_id" style="width:200px;" required multiple></select></td> <select name="size_id[]" select2" id="size_id" style="width:200px;" required multiple></tbody>
<p>Laravel-Code im Controller gespeichert:</p>
<pre class="brush:php;toolbar:false;">$class_ids = $request->input('class_ids');
for($x=0; $x<count($class_ids); $x++) {
#Code...
$color_ids = implode(',', $request->color_id[$x]);
$size_ids = implode(',', $request->size_id[$x]);
$data3[]=array(
'bom_code'=>$TrNo,
'bom_date'=>$request->bom_date,
'cost_type_id'=>$request->cost_type_id,
'Ac_code'=>$request->Ac_code,
'season_id'=>$request->season_id,
'currency_id'=>$request->currency_id,
'item_code' => $request->item_codes[$x],
'class_id' => $request->class_ids[$x],
'description' => $request->descriptions[$x],
'color_id' => $color_ids,
'size_array' => $size_ids,
'Verbrauch' => $request->Verbrauch[$x],
'unit_id'=> $request->unit_ids[$x],
'rate_per_unit' => $request->rate_per_units[$x],
'wastage' => $request->wastages[$x],
'bom_qty' => $request->bom_qtys[$x],
'total_amount' => $request->total_amounts[$x],
);
}
BOMSewingTrimsDetailModel::insert($data3);</pre>
我在每一行的相同列中添加了两个隐藏的输入框,名称分别为color_arrays[]和size_arrays[]。我编写了以下的JavaScript函数,用于从颜色和尺寸的多选下拉框中获取逗号分隔的值,并将隐藏输入框的值保存到数据库。
这对我起作用。