仅选择javascript中的输入字段

时间:2019-03-08 14:28:43

标签: javascript

我的html代码中有很多下拉菜单,复选框和输入类型文本字段。所有这些字段共享相同的ID,其开头为: order-billing_address....{field_name} 我只想获取输入类型的文本字段。

我尝试使用querySelectorAll方法:

var billingFields = document.querySelectorAll('*input[id^="order-billing_address"]');

但是出现语法错误:SyntaxError: '*input[id^="order-billing_address"]' is not a valid selector。如何使选择器工作?

3 个答案:

答案 0 :(得分:4)

您可以通过type

var billingFields = document.querySelectorAll('input[type="text"][id^="order-billing_address"]');
console.log(billingFields)
<input type='checkbox' id='order-billing_address_1'>
<input type='checkbox' id='order-billing_address_2'>
<input type='radio' id='order-billing_address_3'>
<input type='radio' id='order-billing_address_4'>
<input type='text' id='order-billing_address_5'>
<input type='text' id='order-billing_address_6'>

答案 1 :(得分:2)

我不确定为什么选择器中会有一个星号。这样的事情应该起作用:

var billingFields = document.querySelectorAll('input[type=text][id^="order-billing_address"]');

答案 2 :(得分:1)

只需从开头删除星号(*)并添加[type=text]

var billingFields = document.querySelectorAll('input[type=text][id^="order-billing_address"]');