2016-02-12 66 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這種方式。

相關問題