Jquery ui jquery多个ID相同的函数
我有一个有日期输入的表Jquery ui jquery多个ID相同的函数,jquery-ui,jquery,Jquery Ui,Jquery,我有一个有日期输入的表 <td style="background-color:#c6efce"><input type="text" id="datepicker0"></td> <td style="background-color:#c6efce"><input type="text" id="datepicker1"></td> <td style="background-color:#c6efce">&
<td style="background-color:#c6efce"><input type="text" id="datepicker0"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker1"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker2"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker3"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker4"></td>
我正在尝试第一次通过访问它
<script>
$(function() {
$( "#datepicker0" ).datepicker({
showButtonPanel: true
});
});
</script>
$(函数(){
$(“#日期选择器0”)。日期选择器({
showButtonPanel:对
});
});
如何访问所有内容?您可以使用“”选择器:
$(function() {
$("input[id^='datepicker']").datepicker({
showButtonPanel: true
});
});
该选择器将匹配其id
值以“datepicker”开头的任何input
元素。另一种方法是为所有必需的元素提供一个公共类
您还可以使用逗号分隔的列表通过id
选择多个元素:
$("#datepicker0, #datepicker1, #datepicker2"); //List as many as necessary
但是,如果您需要添加更多的输入,那么这并不是特别可扩展的。最好的方法是使用类:
<td style="background-color:#c6efce"><input type="text" class="dp" id="datepicker0"></td>
<td style="background-color:#c6efce"><input type="text" class="dp" id="datepicker1"></td>
<td style="background-color:#c6efce"><input type="text" class="dp" id="datepicker2"></td>
<td style="background-color:#c6efce"><input type="text" class="dp" id="datepicker3"></td>
<td style="background-color:#c6efce"><input type="text" class="dp" id="datepicker4"></td>
<script>
$(function() {
$( ".dp" ).each(function(){
$(this).datepicker({
showButtonPanel: true
});
})
});
</script>
$(函数(){
$(“.dp”)。每个(函数(){
$(此).datepicker({
showButtonPanel:对
});
})
});
但你也可以用这个:
<td style="background-color:#c6efce"><input type="text" id="datepicker0"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker1"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker2"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker3"></td>
<td style="background-color:#c6efce"><input type="text" id="datepicker4"></td>
<script>
$(function() {
$( "#datepicker0,#datepicker1,#datepicker2,#datepicker3,#datepicker4" ).datepicker({
showButtonPanel: true
});
});
</script>
$(函数(){
$(“#日期选择器0,#日期选择器1,#日期选择器2,#日期选择器3,#日期选择器4”)。日期选择器({
showButtonPanel:对
});
});
不建议使用第二种方法。而不是ID,您应该使用一个名为has datepicker的CSS类来搜索它 我理解您的问题,您试图使用jQuery选择多个ID。以下是您如何做到这一点:
$('#1,#2,#3')
您只需用逗号分隔ID
但是,这并不是实现这一目标的最佳方式。您应该真正使用一个类:为每个td
分配一个类并使用:
$('td.myClass')
或者,您可以为该表分配一个ID,并选择其所有td
子项。HTML:
<table id="myTable">
<td>text</td>
<td>text</td>
</table>
jQueryUI自动将“hasDatePicker”类添加到具有日期选择器的所有元素中。您可以在页面中查询$(“input.hasDatePicker”)之类的内容,以获取所有日期选择器。您也可以使用此选项
$(“#datepicker0,#datepicker1,#datepicker2,#datepicker3,#datepicker4)
在datepicker0,#datepicker1,#datepicker1,#datepicker2,#datepicker3,#datepicker4>应用于元素之前(就像在本例中一样…)啊,我读错了原始问题,认为原始问题是关于访问它们,而不是创建它们,但我猜OP确实提供了一个代码片段,他在其中展示了他正在创建一个……为什么在第一个示例中使用each函数,而不是像第二个示例那样调用节点列表上的datepicker?@mikerobi lol good point XD也许您可以提交这样的答案?谢谢@JosephMarikle
$('table#myTable td')