我有这样的表格:
<form name="customize">
Only show results within
<select name="distance" id="slct_distance">
<option>25</option>
<option>50</option>
<option>100</option>
<option value="10000" selected="selected">Any</option>
</select> miles of zip code
<input type="text" class="text" name="zip_code" id="txt_zip_code" />
<span id="customize_validation_msg"></span>
</form>
如何使用一个jQuery选择器选择input
和select
?
我试过了,但它选择了页面上的所有选择和输入:
$("form[name='customize'] select,input")
答案 0 :(得分:35)
选择器字符串中的逗号分隔完全独立的表达式,就像在CSS中一样,因此您给出的选择器获取名为“customize”的表单中的select元素以及表单上的所有输入(如您所述) 。听起来你想要这样的东西:
$("form[name='customize'] select, form[name='customize'] input")
或者如果你没有重复,那么:
$("form[name='customize']").children("select, input")
答案 1 :(得分:7)
更短的语法$(selector,parentselector)也是可能的。 本页示例:
// all spans
$("span").css("background-color","#ff0");
// spans below a post-text class
$("span", ".post-text").css("background-color","#f00");
编辑 - 我忘记了几个孩子的特殊情况!
// spans and p's below a post-text class
$("span,p", ".post-text").css("background-color","#f00");
答案 2 :(得分:0)
对我来说,你的建议是有效的。你也可以使用
form[name='customize'] select, form[name='customize'] input
两个选择器都可以正常工作。也许问题出在其他地方?
我试过
$("form[name='customize'] select, input").css( 'font-size', '80px' );
在您的示例HTML上。选择和输入的字体大小已更改。
---编辑---
我的建议是正确的。它只选择自定义表单中的元素。