这是下拉列表。
<select
id="identity.dvsSourceList.0.issuingState.value"
name="identity.dvsSourceList.0.issuingState.value"
class="native black-60"
required=""
data-invalid=""
>
<option value="">Please select</option>
<option value="ACT">ACT</option>
<option value="NSW">NSW</option>
<option value="NT">NT</option>
<option value="QLD">QLD</option>
<option value="SA">SA</option>
<option value="TAS">TAS</option>
<option value="VIC">VIC</option>
<option value="WA">WA</option>
</select>
我试着执行这个:
document.querySelector('identity.dvsSourceList.0.issuingState.value').value= "VIC";
但它给出了一个错误:
VM252:1 Uncaught DOMException: Failed to execute 'querySelector' on 'Document': 'identity.dvsSourceList.0.issuingState.value' is not a valid selector.
at <anonymous>:1:10
在下拉javascript中选择一个值这是id命名约定的问题,因为您使用的是**.**
。您可以使用类似以下示例的属性选择器:
$("[id='identity.dvsSourceList.0.issuingState.value']").val("VIC");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select
id="identity.dvsSourceList.0.issuingState.value"
name="identity.dvsSourceList.0.issuingState.value"
class="native black-60"
required=""
data-invalid=""
>
<option value="">Please select</option>
<option value="ACT">ACT</option>
<option value="NSW">NSW</option>
<option value="NT">NT</option>
<option value="QLD">QLD</option>
<option value="SA">SA</option>
<option value="TAS">TAS</option>
<option value="VIC">VIC</option>
<option value="WA">WA</option>
</select>
您需要#
根据id进行选择,并且需要反斜杠来转义这些点,以防止它们被解释为类名。但是,您应该考虑使用不太复杂的id,而不使用任何特殊字符。
document.querySelector('#identity\.dvsSourceList\.0\.issuingState\.value').value= "VIC";
<select
id="identity.dvsSourceList.0.issuingState.value"
name="identity.dvsSourceList.0.issuingState.value"
class="native black-60"
required=""
data-invalid=""
>
<option value="">Please select</option>
<option value="ACT">ACT</option>
<option value="NSW">NSW</option>
<option value="NT">NT</option>
<option value="QLD">QLD</option>
<option value="SA">SA</option>
<option value="TAS">TAS</option>
<option value="VIC">VIC</option>
<option value="WA">WA</option>
</select>
试试这个:
document.querySelector('#identity\.dvsSourceList\.0\.issuingState\.value').value= "VIC"
当使用querySelector
时,将前缀#
和id
一起使用,将.
和类一起使用。另一件事是,为了按ID选择包含点的HTML元素,您需要使用双斜杠\
对其进行转义。