我正在处理一个主要表单,并且有一个令人讨厌的错误,我似乎无法理解。
每次对某些字段进行更改时,都会更新隐藏字段以反映此更改。但是,如果您执行某些步骤,那么该字段将停止更新,我不知道。
JSfiddle无法在元素javascript中使用,所以这里是一个测试页面:(链接已删除)。
我取消隐藏了自动更新的字段,它是textarea
正下方的字段。
重现的步骤:
如何阻止这种打破?
答案 0 :(得分:1)
您的错误在此行var strModel = model.options[model.selectedIndex].text;
它说它无法读取未定义的属性text
。在代码中的某处,您需要定义model.selectedIndex
。
我在这里看到你在make
事件中定义了onblur
:
info.onblur=function() {
if (info.value=="") info.value=info.defaultValue;
if (info.value!=info.defaultValue) {
Show('quote_form_Make');
BuildMakeSelect();
make.selectedIndex = 2;
}
}
当我选择make时,模型菜单显示为“Model”,结果如下:
document.getElementById('quote_form_Model').selectedIndex // 0
当我选择“添加您自己的描述”时,结果如下:
document.getElementById('quote_form_Model').selectedIndex // -1
这应该让你开始调试冒险。