Динамика. Почему не работает в IE?
Здравствуйте!
Имеются <form> <INPUT TYPE="BUTTON" VALUE="Тест" onClick="TestArr();" id="TestButton"> </form> и <div id='arrtest'></div> и на javascript функция:
function TestArr(){
str="<table border='1'><tr>";
for(i=0;i<10;i++){
str+="<th name='myarr[]'>"+i+"</th>";
}
str+="</tr></table>";
var box_data = document.getElementById("arrtest");
box_data.innerHTML = str;
x=document.getElementsByName('myarr[]');
alert(x[0].innerHTML);
}
В Firefoxе работает, а в IE7 ругается: "x.0.innerHTML" - есть null или не является объектом Почему и как динамически создавать массив объектов? Заранее СПАСИБО! |
getElementsByName(name) как понятно из названия ищет в теле документа все элементы с названием name. Например,
document.getElementsByName('p') - найдет все параграфы. У Вас непонятно что ищется. |
Цитата:
|
Kolyaj,
точно. :) докопипастился |
помогите пожалуйста новечку
я столкнулась с той же проблемой... помогите пожалуйста:(
это мой код
// **********регистрационная форма*********
function validate()
{
// проверяет форму на то что все поля введены
if( document.RegistreringsForm.UserName.value == '' )
{
alert( "Skriv ditt namn!" );
document.RegistreringsForm.UserName.focus() ;
return false;
}else{
var emailValue = document.RegistreringsForm.email.value;
// Kontrollerar att user add sitt email
if( emailValue == '' || emailValue == 'null')
{
alert( "Skriv din e-mail!" );
document.RegistreringsForm.email.focus() ;
return false;
}else{
var checkPattern = new RegExp ('[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}');
if(checkPattern.test(emailValue))
{
return true;
}else{
alert( "Skriv e-mail i korrekt form!" );
document.RegistreringsForm.email.focus() ;
return false;
}
}
}
}
function open_win()
{
if (validate())
{
window.open("form.html");
}
}
// *********************вывод предупредительного сообщения
function anotheSite()
{
return confirm("Vill du verkligen lamna webbplatsen?");
}
//*******************увеличение картинки
function Bildfostorning(){
window.open(this.src.replace(/\.jpg/, "_Stort.jpg"));
}
function init()
{
//********** выводит сообщение при переходе на др страничку
var links = document.getElementsByTagName('a');
for(var i = 0; i < links.length; i++)
{
if(links[i].className == 'external')
{
links[i].onclick = annansida;
}
}
// ************ изменить картинку
var bild = document.getElementsByTagName('img');
for(var i = 0; i < bild.length; i++)
{
if(bild[i].className = 'bild')
{
bild[i].onclick = Bildfostorning;
}
}
}
window.onload = init;
работает во всех браузерах, но не в IE |
| Часовой пояс GMT +3, время: 20:16. |