我通过AJAX调用PHP文件的内容,如下所示:
NEW.PHP
$output = '<p>Date: <input type="text" id="field_1"></p>
<p>Date: <input type="text" id="field_6"></p>
<p>Date: <input type="text" id="field_7"></p>';
echo $output;
根据用户选择的选项动态生成输入。在本例中,field_1和field_7将是日期选择器字段,field_6将是标准文本框。
在我的主页中,jQuery成功处理程序看起来像这样:success: function(result){
jQuery('#div-custom').html(result).show();
jQuery("#div-custom").find("#field_1,#field_7" ).datepicker({
numberOfMonths: 3,
showButtonPanel: true
});
}
我遇到的问题是日期选择器字段的数量是动态的,字段数field_X可以不同。有没有办法使这个find("#field_1,#field_7")
动态或使用通配符?我可以更改PHP代码,例如,所有日期选择器字段都称为date_X,其他字段称为field_X。
在这种情况下,我想做一些类似find("#date_*)
的事情,但不知道这是否可能。我肯定不擅长Javascript。
非常感谢您的帮助!
您应该使用class
,因为您可以在多个项目上使用相同的类,而不像id
s
<p>Date: <input type="text" class="cal" id="field_X"></p>
jQuery("#div-custom").find(".cal" ).datepicker({
如果你完全依赖于id,那么你可以在输入元素上使用'starts with'选择器。
$("#div-custom input[id^='field']").datepicker({
这将适用于id ='div-custom'的div中所有id以'field'开头的输入