我有一个html5页面,我想根据隐藏字段设置下拉菜单的值,但它不起作用。
function checkPayAdd() {
var i;
var PayAddOption =document.querySelectorAll('input[name="PayAddOption"]');
for ( i = 0; i < PayAddOption.length; i++) {
if (PayAddOption[i].checked == true) {
switch(i)
{
case 0:
document.getElementById("BillingAddress1").value = document.getElementById("Contact_Address1").value;
document.getElementById("BillingAddress2").value = document.getElementById("Contact_Address2").value;
document.getElementById("BillingCity").value = document.getElementById("Contact_City").value;
document.getElementById("BillingProv").selectedIndex = document.getElementById("First_Corp_Director_Prov").value;
document.getElementById("BillingPostalCode").value = document.getElementById("Contact_Postal").value;
document.getElementById("BillingCountry").selectedIndex = document.getElementById("First_Corp_Director_Country").value;
break
我将隐藏字段的值设置为与下拉列表中的值相同的格式 - 即。隐藏字段中的省值是:“AL”,然后应将Billing.Prov下拉值设置为相同。这些是隐藏的字段
<input type="hidden" name="First_Corp_Director_Province" id="First_Corp_Director_Province" value="AL">
<input type="hidden" name="First_Corp_Director_Country" id="First_Corp_Director_Country" value="US">
<select name="BillingProv" id="BillingProv" class="form-control">
<option value="">select State or Province (Canada/US Only)</option>
<option value="ZZ">Outside US or Canada</option>
<optgroup label="United States">
<option id="USA-AL" value="AL">Alabama (AL)</option>
<option id="USA-AK" value="AK">Alaska (AK)</option>
<option id="USA-AZ" value="AZ">Arizona (AZ)</option>
任何帮助将不胜感激!
答案 0 :(得分:1)
这里有2个错误
您应该分配select元素的值,而不是 selectedIndex 。
隐藏字段的ID错误。应该是 First_Corp_Director_Province 而不是 的 First_Corp_Director_Prov 强>
所以用
替换第4行开关盒0document.getElementById("BillingProv").value = document.getElementById("First_Corp_Director_Province").value;
和第6行
document.getElementById("BillingCountry").value = document.getElementById("First_Corp_Director_Country").value;