循环或通配符集成通过JQuery UI Javascript


Loop or Wildcard to integrate through JQuery UI Javascript

我通过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'开头的输入