2016-02-12 36 views
1

我有一个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工作吗?我需要以某种方式为我所有的每一行重新声明它们,但不太确定我如何实现这一目标?

感谢

回答

1

你为什么不使用的simpy代替$('.dateControl')$('.dateControl:first')

Fiddle

创建日期选择器的N个实例,让他们通过独特属性id这种方式。

相关问题