2012-06-05 2 views
0

У меня все еще нет кода, который бы корректно работал в ie9. Однако он работает нормально в Firefox. Должен ли я использовать «document.getElementById», чтобы он работал в ie9? Если да, то где он будет вписываться?Нужно ли использовать «document.getElementById»

function dbasetype(){ 

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

var _area = document.forms[0]._area;   
var _dbase_name = document.forms[0]._dbase_name; 

if (dbasedata.indexOf("UK_CONTACTS")==-1) { 
     _area.value = _dbase_name.value;    
    } else { setarea(); } 
    } 

EDIT Приведенный выше код обновляет поле (который контролирует доступ для физических лиц), в базе данных, когда кнопка сохранения нажата. Он работает нормально в Firefox, как я сказал ранее, но когда это выполняется в ie9, поле, которое должно быть обновлено, и заменяется пустым, а затем пользователь теряет доступ к записи контакта.

+1

Это, безусловно, ваша проблема: 'вар dbasedata = document.forms [0] ._ dbase_name.value'; –

+2

Что это за вопрос? «Я вставляю свой код в SO, а другие его исправляют»? Предоставьте некоторую информацию о том, что вы пытаетесь выполнить и что не работает. – iddo

+0

Извините, очень новичок в этом и не знал о принятии тиков. Приняли некоторые ответы. – labman

ответ

2

Ваша проблема в том, что IE имеет свойство глупо, что каждый идентификатор также является глобальным (только для чтения) объектом. Вы просто должны переименовать переменную в вашем JavaScript, как это:

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

    var x_area = document.forms[0]._area;   
    var x_dbase_name = document.forms[0]._dbase_name; 

    if(dbasedata.indexOf("UK_CONTACTS")==-1) { 
    x_area.value = x_dbase_name.value;    
    } else { 
    setarea(); 
    } 
} 
+0

rekire, вы спасатель жизни. очень признателен. Очень сложно начинать с этого. Теперь я немного продвинулся к свету. thx – labman

+0

Месяц назад у меня было такое же проводное поведение. – rekire

Смежные вопросы