Javascript代码有效,但Firebug中的“未定义”警告

时间:2013-01-21 13:31:35

标签: javascript html

我有下面的javascript代码,它正在运行,但在Firebug中它说

  

document.form1.element [i]未定义

然后它工作正常

function set_action(){

for (var i=0;i<=3;i++)
{

    if (document.form1.PayType[i].checked == true)

        {
            var billerid = document.form1.billerid[i].value;
                            document.form1.action = billerid +"_mypag.htm";
        }
}

我的html标记如下

<form name="form1" action="...">
<input name="PayType" type="radio" value="0" id="ultipay" class="radiobtn" checked/>
<select name="billerid" class="dropbox">
<option>item1</Option>...
</select>
<input name="PayType" type="radio" value="1" id="ultipay" class="radiobtn"/>
<select name="billerid" class="dropbox">
<option>item1</Option>
</select>
<input name="PayType" type="radio" value="2" id="ultipay" class="radiobtn"/>
<select name="billerid" class="dropbox">
<option>item1</Option>...
</select>
<input name="PayType" type="radio" value="3" id="ultipay" class="radiobtn"/>
<select name="billerid" class="dropbox">
<option>item1</Option>...
</select>
<input type="button" onclick="set_action()" value="submit">
</form>

我不知道为什么会收到此错误。

1 个答案:

答案 0 :(得分:2)

如果您只有一个名为PayType的单选按钮,则需要使用document.form1.PayType解决该问题。如果有多个具有相同名称的单选按钮,则将其作为数组document.form1.PayType[i]进行寻址。例如:

<input name="PayType" type="radio" value="0" id="ultipay0" class="radiobtn" checked="checked" />
<input name="PayType" type="radio" value="1" id="ultipay1" class="radiobtn" />