datepicker不适用于动态创建的表行

时间:2013-11-19 15:44:37

标签: jquery jsp struts2 datepicker struts2-jquery

我尝试实现为用户提供动态创建行。行已成功创建,但datepicker已归档。我的代码如下:

    <tr id="input_row_0" class="input_row"> 
        <td> <sj:datepicker theme="simple" name="productionDate" displayFormat="ymmdd" maxlength="6" size="8" showButtonPanel="false"/> </td> 
        <td> <s:textfield name="productName" /></td>
    </tr>
    <tr id="add_new"> 
        <td colspan="4" align="right"> Add New Rows </td>
    </tr>

用于添加动态行的javascript / jquery代码:

$(function(){
    // Add New Row    
    var counter = 1;  
   $( "#add_new" ).click(function() {
        var html = '<tr id="input_row_'+counter+'" class="input_row" >'+$("#input_row_0").html()+"</tr>"; 
        $('.input_row:last').after(html) ; 
        $('.input_row:last button').attr('alt', 'input_row_'+counter) ; 

          counter++; 
    }); 
    });

有人可以建议我改变代码的哪一部分,以便datepicker能够正常工作吗?

[注意:我正在使用JSP页面,这里使用的是Struts 2]

1 个答案:

答案 0 :(得分:0)

您必须在新创建的对象上明确调用.datePicker()

例如

$('.input_row:last button').datepicker({
      showButtonPanel: true,
      showOn: "both",
      buttonImageOnly: true,
      buttonImage: "calendar.gif",
      buttonText: "Calendar",
      altFormat: "yy-mm-dd"
    });

Reference

Documentation