1

我在此处列出的项目中使用表单控件

当我将它包含在我的页面中时,它会生成一整套动态 html 来很好地格式化所有内容。但是,我正在尝试应用于jQuery datepicker表单中的一些输入元素,但我不知道如何选择我想要的输入。

我已经将 SuperForm 直接嵌套在一个div名为“ bookings”中,所以我知道我可以将其用作起点,但我需要遍历该 div 的所有后代,直到找到正确的输入,我知道它们的顺序出现所以我假设我可以在这里的某个地方使用 nth-child(x) 但到目前为止我还没有运气。任何帮助将不胜感激!

解决了!这是我的解决方案:

$("#bookings :input[type='text']:eq(2)").datepicker({...});
4

5 回答 5

1

解决了!这是我的解决方案:

$("#bookings :input[type='text']:eq(2)").datepicker({...});
于 2012-05-02T15:44:23.717 回答
0

将类、属性或 id 应用于您想要的元素或以这种方式检查每个元素。

$('#bookings input').each(function () {
   //Check here

 });
于 2012-05-01T16:53:37.820 回答
0

您显然需要一些标识符/选择器来过滤您的输入元素。

$('#bookings').find('.applyDatePicker').datepicker({...});
于 2012-05-01T17:15:10.650 回答
0

使用 HTML5 中支持的新输入类型。

新的输入类型是:

  • 颜色
  • 日期
  • 约会时间
  • 本地日期时间
  • 电子邮件
  • 数字
  • 范围
  • 搜索
  • 电话
  • 时间
  • 网址
  • 星期

如果将它们设置为日期(或日期时间),则可以使用以下方法选择所有元素:

$('input[type="date"]').each(function(index,element){
   $(element).datepicker...
}
于 2012-05-01T21:31:30.923 回答
0

你在使用简单选择器时是对的,但是如果你的主选择器很复杂,你可能不能在主选择器中使用输入选择器,所以最好使用

.find(" :input[type='text']")

例如在可排序的场景中,如果主选择器是这样的:

$("#ulId").children('li:not(.ui-sortable-placeholder)')

如果您编写如下代码,您将无法获得任何元素:

$("#ulId").children('li:not(.ui-sortable-placeholder) :input[type='text']')

但我们可以使用这个:

$("#ulId").children('li:not(.ui-sortable-placeholder)').find(" :input[type='text']")

希望这有帮助。

于 2016-08-15T22:51:11.890 回答