此jQuery选择器尝试匹配具有以下任何类型的input
个元素[text | number | email | tel]
它无法匹配元素。怎么做到呢? THX
$('input[type="text"][type="number"][type="email"][type="tel"]')
答案 0 :(得分:2)
您需要使用逗号分隔选择器:
$('input[type="text"], input[type="number"], input[type="email"], input[type="tel"]')
另一种选择是:
$('input[type="text"], input[type="number"], input[type="email"], input[type="tel"]')
答案 1 :(得分:1)
答案 2 :(得分:0)
输入一次只能匹配一种类型。请尝试使用多个选择器。
在下面的案例中,无论哪一个都会被执行。
$('#btn').click(function(){
console.log($('input[type="text"], input[type="number"], input[type="email"], input[type="tel"]').val());
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />
<input type="number" />
<input type="email" />
<input type="tel" />
<button id="btn">Click</button>
如果要获取所有值,只需迭代选择器返回的所有元素
$('#btn').click(function(){
$('input[type="text"], input[type="number"], input[type="email"], input[type="tel"]').each(function() {
console.log($(this).val());
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />
<input type="number" />
<input type="email" />
<input type="tel" />
<button id="btn">Click</button>