下面的代码正常工作,直到行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(); }
}
编辑我认为这可能与它是一个下拉字段有关。
答案 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中的值。