我正在动态生成下拉列表,例如someDropDown0,someDropDown1,someDropDown2 ......等,并在页面中将其写为div。我想知道如何将“selected”选项值设置为drop的onChange。
我通过按钮添加新下拉菜单的原因是旧的值被重置为“选择一个”。
需要一个onChange,它会将所选值设置为“Selected”,以便所选值保持不变。
<select id="someDropDown0" onChange=setVak(this, this.id)>
<option value="Select One" selected>Select One</option>
<option value="12">AB</option>
<option value="13">CD</option>
<option value="15">EF</option>
<option value="20">GH </option>
<option value="21">IJ </option>
<option value="22">LM </option>
</select>
function setval(optionVal, optionId)
{
var dd = document.getElementById(optionId);
for (var i = 0; i < dd.options.length; i++)
{
if (dd.options[i].text === optionVal.text)
{
dd.selectedIndex = i;
break;
}
}
}
请帮忙。感谢
答案 0 :(得分:1)
如果我找到了你并且你正在为现有的选择框添加新选项:而不是某种“onchange”行为(实际上是子树修改),你可能想要改变附加新选择选项的代码。 / p>
请参阅以下示例函数以供参考:
答案 1 :(得分:1)
将相应选项元素的defaultSelected属性设置为true应该可以解决问题:
> if (dd.options[i].text === optionVal.text)
> {
dd.options[i].defaultSelected = true;
> dd.selectedIndex = i;
> break;
> }
但请确保您只设置了一个选项。
或者我完全误解了这个问题?