我有一个JSFiddle,它演示了我的创建页面。基本上,我有一张表格,有人可以输入一个动作和一个日期。当添加新行时,会使用一些javascript克隆行并重置新行的日期选择器。正如你可以在小提琴中看到的那样,工作正常。Laravel 5 - 克隆日期选择器的编辑页面
我的数据然后被保存到数据库表中,每行动一行。不包括所有的列,我的表格基本上看起来像以下
action | deliveryDate |
---------------------------------
Walk dog | 01/01/2016 |
---------------------------------
Wash clothes | 08/02/2016 |
---------------------------------
Party | 09/02/2016 |
---------------------------------
这是很好的直到这一点。问题在于此表的编辑页面。我通过网页它所需要的变量,然后我做了以下
@foreach($actionPoints as $key => $action)
<tr id='actionRow{{$key}}'>
<td>
{!! Form::text('actionInput['.$key.'][action]', $action->action, array('class' => 'form-control', 'id' => 'actionInput'.$key)) !!}
</td>
<td>
{!! Form::text('actionInput['.$key.'][deliveryDate]', $action->deliveryDate, array('class' => 'form-control dateControl', 'id' => 'dateInput'.$key)) !!}
</td>
</tr>
@endforeach
如果我认为什么是输出的源代码,我看到了我希望看到
<tbody>
<tr id="actionRow0">
<td>
<input type="text" value="Walk dog" name="actionInput[0][action]" id="actionInput0" class="form-control">
</td>
<td>
<input type="text" value="2016-02-23" name="actionInput[0][deliveryDate]" id="dateInput0" class="form-control dateControl hasDatepicker">
</td>
</tr>
<tr id="actionRow1">
<td>
<input type="text" value="Wash clothes" name="actionInput[1][action]" id="actionInput1" class="form-control">
</td>
<td>
<input type="text" value="2016-02-25" name="actionInput[1][deliveryDate]" id="dateInput1" class="form-control dateControl">
</td>
</tr>
</tbody>
因此,每个日期选择元素有一个唯一的ID。问题是,因为我的datepickers是通过JavaScript动态声明的,所以它不适用于我的编辑页面。因此,只有第一个日期选择器才能工作。我不能在我的javascript中声明一个datepickers的负载,因为我不知道我需要多少。
有什么办法让我的编辑页面上的datepickers工作吗?我需要以某种方式为我所有的每一行重新声明它们,但不太确定我如何实现这一目标?
感谢