变量不从字段收集数据

时间:2012-06-05 19:59:53

标签: javascript

下面的代码正常工作,直到行document.forms[0]._area.value = dbasedata;它只会复制数据,如果加载表单后该字段中的数据已被更改。 如果它被改变为任何东西(甚至回到原始值)它将起作用。
谁知道为什么?

function dbasetype() {
  var dbasedata = document.forms[0]._dbase_name.value;
  dbasedata2 = dbasedata.toUpperCase().replace(/\s/g, "");


  if(dbasedata2.indexOf("UK_CONTACTS")<0) {
    document.forms[0]._area.value = dbasedata;           
  }  else { setarea(); } 
}

编辑我认为这可能与它是一个下拉字段有关。

1 个答案:

答案 0 :(得分:0)

也许我只是在这里误解了一些东西,但我认为你错过了其他的东西:

if(dbasedata2.indexOf("UK_CONTACTS")<0) {
    document.forms[0]._area.value = dbasedata;           
  }  { setarea(); } 

应该是:

if(dbasedata2.indexOf("UK_CONTACTS")<0) {
    document.forms[0]._area.value = dbasedata;           
} else { 
    setarea(); 
} 

与您的代码一样,始终会调用setarea。很难说没有看到setArea是什么,但看起来它可能会覆盖if中的值。