0

我在 Jquery 模板中的文本框之一上使用 Datepicker,但它没有弹出。在模板之外工作正常。下面是我想做的。

jQuery().ready(function () {

  //$("#HireDate").datepicker();
  $("#HireDate").datepicker({dateFormat:'dd-mm-yy', showAnim:'fadeIn'})


});

<script id="UserDetailTemplate" type="text/x-jquery-tmpl">

<table style="width:100%;">
        <tbody>             

                        <tr>
                            <td style="width:25%;font-weight:bold;">HireDate:</td>
                            <td><input type="text" id="HireDate" value="${ HireDate }" /></td>
                        </tr>  

                    </table>                         
                    </td>
            </tr>
        </tbody>
</table> 
 </script> 
4

1 回答 1

1

在您使用模板向页面中插入一些内容之前,该#HireDate元素不存在。因此,当您尝试在 DOM 准备好时绑定 datepicker 时,会$('#HireDate')返回一个空列表(即$('#HireDate').length == 0)并且不会发生任何有用的事情。

解决方法是在模板填写好插入页面绑定datepicker 。像这样的东西:

$('#UserDetailTemplate').tmpl(data).appendTo('#something');
$('#HireDate').datepicker({ dateFormat: 'dd-mm-yy', showAnim: 'fadeIn' });
于 2010-12-29T05:57:39.667 回答