Javascript Can';t使用jquery创建多个日期选择器
我有个问题。我有一个动态表单,可以生成一行文本字段,这些文本字段应该是datepicker。这些文本字段具有相同的类,但只有第一个具有日期选择器。其余部分无法生成日期选择器。但是当我检查他们的类时,他们有一个日期选择器类 以下是我的简单代码:Javascript Can';t使用jquery创建多个日期选择器,javascript,jquery,jquery-ui,datepicker,Javascript,Jquery,Jquery Ui,Datepicker,我有个问题。我有一个动态表单,可以生成一行文本字段,这些文本字段应该是datepicker。这些文本字段具有相同的类,但只有第一个具有日期选择器。其余部分无法生成日期选择器。但是当我检查他们的类时,他们有一个日期选择器类 以下是我的简单代码: function addNewRowCheck() { check_html = '<tbody id="check-row' + check_row + '">'; check_html += '&l
function addNewRowCheck() {
check_html = '<tbody id="check-row' + check_row + '">';
check_html += '<tr style="background-color: #FDCACB">';
check_html += '<td class="txt-center"><input type="hidden" name="check[' + check_row + '][order_no]" value="' + check_row + '" /></td>';
check_html += '<td>';
check_html += '<select>';
check_html += $select_account_type;
check_html += '</select>';
check_html +- '</td>';
check_html += '<td><input type="text" class="txt-center chkdate" name="check[' + check_row + '][curr]" /></td>';
check_html += '<td><input type="text" class="txt-right" name="check[' + check_row + '][rate]" /></td>';
check_html += '<td><input type="text" class="txt-right" name="check[' + check_row + '][amount]" /></td>';
check_html += '<td><input type="text" class="txt-right" name="check[' + check_row + '][check_number]" /></td>';
check_html += '<td><input type="text" class="txt-right chkdate" name="check[' + check_row + '][check_date]" /></td>';
check_html += '<td><input type="text" class="txt-right" name="check[' + check_row + '][bank_name]" /></td>';
check_html += '<td class="center"><img id="remove_btn" src="<?php echo $button_remove; ?>" onclick="$(\'#check-row' + check_row + '\').remove()" style="display: inline;" /></td>';
check_html += '<tr>';
check_html += '</tbody>';
$('#check-content tfoot').before(check_html);
check_row++;
}
*您可以启动jquery单击功能*
$("input[type=text]").click(function() {
$(this).datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true
});
});
添加新行后,必须手动将其设置为日期选择器。您的代码只初始化已经存在的日期选择器,而不是动态添加的日期选择器。没有处理插件初始化的事件委派方式。。。您需要在创建新元素后执行此操作。。。所以
var$new=$(check_html).insertBefore('check content tfoot')$new.find('.chkdate').datepicker({dateFormat:'yy-mm-dd',changeMonth:true,changeYear:true})代码>
$("input[type=text]").click(function() {
$(this).datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true
});
});