Jquery 日期选择器和时间选择器不处理附加元素
我正在使用Jquery 日期选择器和时间选择器不处理附加元素,jquery,Jquery,我正在使用datepicker和timepicker来处理如下字段: <input class="datepicker" name="sugg_date[]" type="text" value="" /> <input class="tp" name="sugg_time[]" type="text" value="" /> 我还使用此函数添加更多行: <script> function add_next_row(e, row_a) {
datepicker
和timepicker
来处理如下字段:
<input class="datepicker" name="sugg_date[]" type="text" value="" />
<input class="tp" name="sugg_time[]" type="text" value="" />
我还使用此函数添加更多行:
<script>
function add_next_row(e, row_a) {
curr_row = $(row_a).prev('p');
curr_row.append('<input class="datepicker" name="sugg_date[]" type="text" value="" />');
curr_row.append('<input class="tp" name="sugg_time[]" type="text" value="" />');
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
}
</script>
函数添加下一行(e,行a){
curr_row=$(row_a).prev('p');
当前行追加(“”);
当前行追加(“”);
如果(如默认){
e、 预防默认值();
}否则{
e、 returnValue=false;
}
}
但是新行不适用于
时间选择器
和日期选择器
。有人能告诉我原因吗。您需要为添加的每个新元素初始化日期选择器
和时间选择器
。试试这个:
function add_next_row(e, row_a) {
e.preventDefault();
var $datefield = $('<input class="datepicker" name="sugg_date[]" type="text" value="" />').datepicker();
var $timefield = $('<input class="tp" name="sugg_time[]" type="text" value="" />').timepickr({convention:12});
curr_row = $(row_a).prev('p');
curr_row.append($datefield);
curr_row.append($timefield);
}
函数添加下一行(e,a行){
e、 预防默认值();
var$datefield=$('').datepicker();
var$timefield=$('').timepicker({convention:12});
curr_row=$(row_a).prev('p');
当前行追加($datefield);
当前行追加($timefield);
}
功能添加下一行(e,a行){
如果(如默认){
e、 预防默认值();
}否则{
e、 returnValue=false;
}
curr_row=$(row_a).prev('p');
var$datefield=$('').datepicker();
变量$timefield=$('');
当前行追加($datefield);
当前行追加($timefield);
当前行追加(
);
$(“.timepicker”).timepicker().timepicker({convention:12});
}
$('.datepicker').datepicker()$('.tp').timepicker().timepicker({convention:12});这就是我如何使用jquery应用时间选择器和datepierU的方法。在插入新行后,我们必须重新加载datepicker,因此在函数末尾再次调用datepicker。我如何才能做到这一点?我对此有点陌生。您的代码在哪里?您在哪里通过juqery$(document.ready)调用了datepicker函数和timepicker函数{$('.datepicker').datepicker();$('.tp').TimePicker().TimePicker({convention:12});$({convention:12}).TimePicker().TimePicker({convention:12});感谢@rory今天“第一个文件”已经开始工作了,但在“第二个文件”的时候却完全不工作了我注意到你调用了插件timepicker
,是这样吗,还是应该是timepicker
?不,这是正确的,因为附加之前的第一个字段很好。有没有其他方法可以解决这个问题?我尽了最大的努力,但是timepicker没有工作,我不知道为什么?Rory McCrossan
function add_next_row(e, row_a) {
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
curr_row = $(row_a).prev('p');
var $datefield = $('<input class="datepicker" name="sugg_date[]" type="text" value="" />').datepicker();
var $timefield = $('<input class="timepickr" name="sugg_time[]" type="text" value="" />');
curr_row.append($datefield);
curr_row.append($timefield);
curr_row.append("<br/>");
$(".timepickr").timepickr().timepickr({convention:12});
}