0

我目前有以下代码:

$('input[data-geo], select[data-geo]').doSomething()

理想情况下,我只想声明[data-geo]一次属性。不确定这是否可能,但大致如下:

$('(input, select)[data-geo]')

有任何想法吗?

4

3 回答 3

2

您可以使用以下内容:

​$('[data-geo]')​​​.​filter(':input')​

在这个小提琴上测试成功:http: //jsfiddle.net/cHJ6S/

有关详细信息,请参阅 jQuery 网站上的以下页面:http: //api.jquery.com/input-selector/

于 2012-11-01T15:41:27.263 回答
1

您可以.filter()用于此类情况

$('input, select').filter('[data-geo]').doSomething()

这将仅选择具有属性的inputandselect元素[data-geo]

于 2012-11-01T15:38:52.130 回答
0

你也可以做

$('[data-geo]').doSmth();

但是,这意味着您在每个具有此属性的元素上调用 doSmth() ,而不仅仅是selectand input

于 2012-11-01T15:34:42.537 回答