1

我正在尝试编写代码,在重置后将 rrpmax 设置为 3000。IE 可以,但不能在 Firefox 和 Chrome 中工作。

    <html>
<head>
<script type="text/javascript">
function formReset()
{
var fields = document.getElementsByTagName( "input" );
for ( i = 0; i < fields.length; i++ )
{
if ( fields[ i ].type == "checkbox" )
fields[ i ].checked = false;
}
document.getElementById( 'rrpmax' ).selectedIndex = 3;
}
</script>
</head>
<body>
<input type="button" value="reset" onclick="formReset()"/>
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<select id="rrpmax">
<option>1000</option>
<option>2000</option>
<option>3000</option>
</select>
</body>
</html>
4

4 回答 4

1

这是一个常见的错误

1)首先索引从零开始,你应该定位 index 2

2)其次是浏览器兼容性,以防忘记在 javascript 中的适当使用,用作设置选择的名称和值

<select name="rrpmax" id="rrpmax">
<option value="1000">1000</option>
<option value="2000">2000</option>
<option value="3000">3000</option>
</select>

3)你可以使用

document.getElementById( 'rrpmax' ).value='3000';
于 2012-06-26T10:06:40.757 回答
0

仅使用reset表单提供的功能怎么样?
不使用任何javascript

<form>
    <input type="reset" value="reset"/>
    <input type="checkbox" />
    <input type="checkbox" />
    <input type="checkbox" />
    <select id="rrpmax">
        <option>1000</option>
        <option>2000</option>
        <option selected>3000</option>
    </select>
</form>

演示在 http://jsfiddle.net/P6RR6/

于 2012-06-26T10:09:35.010 回答
0

尝试为您的选择赋予价值

<select id="rrpmax">
    <option value="1000">1000</option>
    <option value="2000">2000</option>
    <option value="3000">3000</option>
</select>

并编辑选择的 attr

document.getElementById('rrpmax').value = 3000;
于 2012-06-26T10:06:23.293 回答
0

您可以添加selected参数 http://www.w3schools.com/tags/att_option_selected.asp

于 2012-06-26T10:07:19.703 回答