我正在创建一个应用程序,我想在其中应用日期选择器来选择出生日期,因此我尝试使用jquery ui timepicker addon.js,但问题是当我尝试在div中静态使用它时,它会显示日期选择器,但当我尝试动态创建它时,没有人能说出它为什么会这样,以及我在哪里犯了错误吗这是创建动态日期选择器的代码:
var creatText = $(document.createElement('input')).attr('type','text');
creatText.attr('class','datetimepicker');
creatText.attr('id','birthdate');
creatText.attr('size','25');
creatText.attr('placeholder','Birth Date');
creatText.appendTo('#contentdemo');
以下是静态创建日期选择器及其正常工作的代码:
<div data-role="content" id="contentDemo">
<div data-role="collapsible-set" data-content-theme="c" style="margin-left: 8px;margin-right: 8px" id="dynamic_actionform">
</div>
<input class='datetimepicker' placeholder="birth date" size='25'>
</div>
以下是github中js文件的示例,使用此处的链接描述logcat中的错误:
logcat09-05 06:37:41.943: D/CordovaLog(2822): Uncaught Error: no such method 'value' for slider widget instance 09-05 06:37:41.943:
E/Web Console(2822): Uncaught Error: no such method 'value' for slider widget instance at file:///android_asset/www/js/jquery-1.7.1.js:552
提前谢谢。
我认为在将新元素附加到DOM后,需要对其调用.datetimepicker(),如下所示:
$('#contentdemo').append('<input type="text" id="birthdate" size="25" placeholder="Birth Date">');
// This should initialize the datepicker functionality
jQuery('#birthdate').datetimepicker();
var creatText = $(document.createElement('input')).attr('type', 'text');
creatText.attr('class', 'datetimepicker');
creatText.attr('id', 'birthdate');
creatText.attr('size', '25');
creatText.attr('placeholder', 'Birth Date');
creatText.appendTo('#contentDemo');
$('.datetimepicker').datetimepicker()
追加时将contentDemo
拼写为contentdemo
。
Fiddle示例