1

我有一个使用jquery的clone()方法在表中动态生成的输入字段的代码。代码如下

$(document).ready(function(){
    $("#myTable tr:last input").live("click",function(){
    $(this).parent().parent().clone().appendTo("#myTable");
    });

    });

我的表格的html代码如下

<table id="myTable" class="timingtable" border="1" cellpadding="0" cellspacing="0" align="left" style="width:100%; height:170px;">
  <tr>
    <th>Start time</th>
    <th>End time</th>
    <th>Family</th>
  </tr>
  <tr>
    <td><input type="date" name="start" id="element1" class="datefield" value=""></td>
    <td><input type="date" name="end" id="element2" class="datefield" value="" ></td>
    <td><input type="text"/></td>
  </tr>
  <tr>
   <td><input type="date" name="start" id="element3" class="datefield" value=""></td>
    <td><input type="date" name="end" id="element4" class="datefield" value="" ></td>
    <td><input type="text"/></td>
  </tr>
<tr>
    <td><input type="date" name="start" id="element5" class="datefield" value=""></td>
    <td><input type="date" name="end" id="element6" class="datefield" value="" ></td>
    <td><input type="text"/></td>
  </tr>
<tr>
    <td><input type="date" name="start" id="element7" class="datefield" value=""></td>
    <td><input type="date" name="end" id="element8" class="datefield" value="" ></td>
    <td><input type="text"/></td>
  </tr>
<tr>
   <td><input type="date" name="start" id="element9" class="datefield" value=""></td>
    <td><input type="date" name="end" id="element10" class="datefield" value="" ></td>
    <td><input type="text"/></td>
  </tr>
<tr>
   <td><input type="date" name="start" id="element11" class="datefield" value=""  /></td>
    <td><input type="date" name="start" id="element12" class="datefield" value=""/></td>
    <td><input type="text"/></td>
  </tr>
</table>

我在输入字段中添加了 timepicker,如下所示

<script type="text/javascript">
        $(function () {
            $('.datefield').timepicker();
        });

datefield 是赋予静态输入字段的类名。

我正在获取静态字段的时间选择器,但我没有获取动态生成的输入字段的时间选择器。

我必须做些什么才能让时间选择器也进入动态生成的字段。请为这个问题提供解决方案。

提前致谢.......

4

2 回答 2

2

您必须手动更改时间选择器字段的 ID。然后将时间选择器应用于动态添加的字段。只有这样才能奏效。因为 timepicker 使用元素的 ID。

$(document).ready(function(){
    $("#tableID tr:last input").live("click",function(){
    $(this).parent().parent().clone().appendTo("#tableID");
    });

    });

而不是这个使用这个

$(document).ready(function(){
    $("#tableID tr:last input").live("click",function(){
    $(this).closest('tr').clone().appendTo("#tableID");
    });

    });
于 2012-06-12T05:35:22.020 回答
0

只是一个疑问,为什么你需要 id 和 class ?

我有一个类似的要求,我只在课堂上做过......因为 id 迎合了独特性。

检查以下链接:

http://jsfiddle.net/manmohan_menon/6YkyY/4/

于 2012-08-02T10:17:31.957 回答