Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Altaxar от 01 Февраля 2008, 16:22:57

Название: JS и массив
Отправлено: Altaxar от 01 Февраля 2008, 16:22:57

this.send_ajax=function(name,mas){
alert(\'good8\');

var str="";
for(item in mas){
alert(item);
str+="";
}
alert(\'good9\');
document.getElementById(name).innerHTML=str;

this.run_ajax(false);
document.forms[name].submit();
}
//Change Data
this.change_data=function(id){

var ajax_value= new Array();
ajax_value[\'id_block\']=id;
ajax_value[\'date_from\']=document.getElementById(\'room_date_from_\'+id).value;
ajax_value[\'date_to\']=document.getElementById(\'room_date_to_\'+id).value;
ajax_value[\'room_key\']=document.getElementById(\'select_room_\'+id).value;
alert(ajax_value.length);
this.send_ajax(\'form_room_ajax\',ajax_value);
}

вот дава метода из обьекта, один вызывает другой,
В FireFox работает, в IE нехочет, выводит alert(ajax_value.length) => 0 потом \'good8\', и до  \'good9\' выдает ошикбку.
Почему IE не нравится мой массив "ajax_value"?
Название: JS и массив
Отправлено: Altaxar от 06 Февраля 2008, 11:36:32
Вижу никто не заметил ошибку те кто знает ее,
тем кто не вкурсе: В цикле

 for(item in mas){
            alert(item);
            str+="";
        }

Для IE недопустимо переменная с именем "item".
Меняем например на item2 и все наченает работать.