[英]display datepicker on dynamically created button
i'm trying to show datepicker when user click on dynamically created button.i don't want to show text box there so i use hidden input. 我试图在用户点击动态创建的按钮时显示datepicker。我不想在那里显示文本框,所以我使用隐藏输入。
Javascript: 使用Javascript:
function showDate(){
var dateDiv = $('#dateDiv');
for(ind=0; ind<=5; ind++){
var date = $('<img src="calendar.png" class="datepicker" id="'+ind+'-date" /><input type="hidden" id="'+ind+'-date-picker" /><br />');
dateDiv.append(date);
}
}
window.onload = function(){
showDate();
$('.datepicker').live('click', function(){
var datepickerId =$(this).attr('id');
datepickerId += '-picker';
$('#'+datepickerId).datepicker();
});
}
but nothing happen when i click on calender icon. 但是当我点击日历图标时没有任何反应。
HTML: HTML:
<body>
<div id="dateDiv"></div>
</body>
.datepicker()
just sets up a datepicker. .datepicker()
只是设置一个datepicker。 You may do this already when you create the div, and not every time it is clicked. 您可以在创建div时执行此操作,而不是每次单击它时都执行此操作。
To show it, you may call .datepicker('show');
要显示它,你可以调用
.datepicker('show');
Not sure which version of JQuery you are using, but if it is 1.7+ '.live()' is deprecated and if it is 1.9+ it has been removed. 不确定您使用的是哪个版本的JQuery,但是如果它是1.7+'.live()'已被弃用,如果它是1.9+,则它已被删除。 Link
链接
Additionally, I would suggest using the document.ready function to initialize. 另外,我建议使用document.ready函数进行初始化。
function showDate(){
var dateDiv = $('#dateDiv');
for(ind=0; ind<=5; ind++){
var date = $('<img src="calendar.png" class="datepicker" id="'+ind+'-date" /><input type="hidden" id="'+ind+'-date-picker" /><br />');
dateDiv.append(date);
}
}
$(document).ready( function(){
showDate();
$('.datepicker').on('click', function(){
var $datepicker =$(this).attr('id');
$datepicker += '-picker';
$('#'+$datepicker).datepicker();
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.