在线等待!100分解决马上送!innerHTML生成的语句不能访问name和id吗?

deadcat 2004-07-15 10:17:01
我用innerHTML把如下内容放到了表格里(根据id放的),如果您觉得乱可以不看代码,我下面详细说明
str+='第'+i+'个标题<br>小栏目标题<input type="text" value="1" id="test" name="letitle'+i+'"><br>小栏目图片(左)<input imgid="leimg'+i+'" name="leimgname'+i+'" type="file" onChange="showsize(this.imgid,this.value)"><br>小栏目相关文章(左)<textarea name="learticle'+i+'"></textarea><br>小栏目文章链接(左)<input type="text" name="learticlelink'+i+'"><BR><img id="leimg'+i+'" src=""><br>';<td id=test></td>
然后根据另外的事件想在innerHTML生成的最后一句
<td id=test></td>
中加入内容,但是根据test这个id却访问不了,请问这是为什么,innerHTML生成的是不是就是这样?那样岂不是很不方便?谢谢!
...全文
134 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
starwu 2004-07-16
  • 打赏
  • 举报
回复
以上是我在WIN2000 + IE6.0 下测试过是可行的。

Enter.innerHTML生成对像,注意要一次性生成,不要用
Enter.innerHTML = "a";
Enter.innerHTML += "b";

可以通过中间变量一次性生成.以前我也碰到过这种问题.楼主好运,睡觉鸟!
starwu 2004-07-15
  • 打赏
  • 举报
回复
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
function bodyLoad() {
if (!document.all("enter").innerHTML) {
var Enter = document.all("enter");
var enterForm = "<form name='enterForm'>";
enterForm += "<input type='text' name='test' value='测试'></form>"
Enter.innerHTML = enterForm;
var test = document.all("test");
alert(test.value);
test.value = "可以改的吧!";
}
}
</SCRIPT>
</HEAD>

<BODY OnLoad="bodyLoad()">
<div id="enter"></div>
</BODY>
</HTML>
deadcat 2004-07-15
  • 打赏
  • 举报
回复
晕!csdn得缓冲时间也长了点吧~~耽误时间啊!!~~55555555

虽然对于不正当发言能屏蔽掉,但正规的帖子也带浪费时间了吧~~~我困死了~~~还要等着~~
deadcat 2004-07-15
  • 打赏
  • 举报
回复
谢谢二位的回答不过

to starwu(星沉海底)
var Enter=document.all("enter");
Enter.innerHTML="<form name='enterForm'>";
Enter.innerHTML+="</form>"
var EnterForm=document.all("enterform");

我的代码和这个非常相似,但我要读取的是
var Enter=document.all("enter");
Enter.innerHTML="<form name='enterForm'>";
Enter.innerHTML+="<input type='text' name='test'></form>"
var EnterForm=document.all("enterform");
中的document.all("test");不知可不可以,
最上面的你说可以在我这边测试还是不行alert(document.all('enterForm'));没反应


to ice_berg16(寻梦的稻草人:
无所谓,只要能读取name就行,我最最想得到的还是表单的参数

starwu 2004-07-15
  • 打赏
  • 举报
回复
楼上的,楼主明明是一个TD。是可以访问和改变的,至少我用IE6.0是可以的!
ice_berg16 2004-07-15
  • 打赏
  • 举报
回复
如果你是在TR对象上应用innerHTML,那么你的做法是错的,
TR对象的innerHTML属性是只读的,
想操作的话使用TABLE对象模型。
starwu 2004-07-15
  • 打赏
  • 举报
回复
var Enter=document.all("enter");
var EnterForm;
EnterForm="<form name='nterForm'>
EnterForm+="</form>"
Enter.innerHTML=EnterForm;
var EnterForm=document.all("enterform");

以上代码是可以访问的。如果改成下面的就不能访问了。不知道楼主也是这样的?
var Enter=document.all("enter");
Enter.innerHTML="<form name='nterForm'>
Enter.innerHTML+="</form>"
var EnterForm=document.all("enterform");

以上代码是不可访问的!

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧