0

我正在处理潜在客户表单,并且有一个烦人的错误,我似乎无法理解。

每次对某些字段进行更改时,都会更新隐藏字段以反映此更改。但是,如果您执行某些步骤,那么该字段将停止自我更新,我不知道。

JSfiddle 不适用于元素 javascript,所以这里有一个测试页面:(链接已删除)。

我已取消隐藏自动更新的字段,它位于textarea.

重现步骤:

  • 选择美国作为原产国。
  • 从“您要运送什么?”中选择任何选项 场地。
  • 从“告诉我们更多”字段中选择“添加我自己的描述”。
  • 编辑 textarea 并取消聚焦该字段以查看其下方的字段更新其内容。
  • 现在,再次打开“告诉我们更多”下拉菜单,这次选择任何汽车品牌。
  • 将出现一个“模型”下拉菜单,您可以从中选择或忽略以查看“隐藏”字段如何更新。
  • 返回“告诉我们更多”字段,再次选择“添加我自己的描述”。
  • 编辑 textarea 以发现隐藏字段不再自行更新。
  • 您必须再次选择一个品牌,然后重新选择自己的描述以强制它更新对文本区域所做的任何更改。

我怎样才能阻止它破裂?

4

1 回答 1

1

你的错误在这一行var strModel = model.options[model.selectedIndex].text;

这是说它无法读取text未定义的属性。您可能需要在代码中的某处定义model.selectedIndex.

我在这里看到您正在定义事件make中的 's onblur

info.onblur=function() {
    if (info.value=="") info.value=info.defaultValue;
    if (info.value!=info.defaultValue) {
        Show('quote_form_Make');
        BuildMakeSelect();
        make.selectedIndex = 2;
    }
}

当我选择一个品牌时,模型菜单显示“模型”,结果如下:

document.getElementById('quote_form_Model').selectedIndex // 0

当我选择“添加您自己的描述”时,结果如下:

document.getElementById('quote_form_Model').selectedIndex // -1

这应该让你开始你的调试冒险。

于 2013-02-28T19:24:55.553 回答