javascript中document.write()写HTML元素问题,请大家检查下错在那里。 在网上随便拷贝的回答请不要回答。

我想用document.write()写HTML元素,但是总也不成功,不知道问题出在哪儿?<tableborder='0'cellspacing='0'cellpaddi... 我想用document.write()写HTML元素,但是总也不成功,不知道问题出在哪儿?
<table border='0' cellspacing='0' cellpadding='0'>
<tr>
<td style="position: absolute; left: 100; top: 100; background-color: #000" width="5" height="5"></td>
</tr>
</table>
document.wirte()如下:
document.write("<table border='0' cellspacing='0' cellpadding='0'>");
document.write("<tr>");
document.write("<td style='position:absolute;left:",100,";top:",100,";background-color:",#000,";'");
document.write(" width='",5,"'");
document.write(" height='",5,"'>");
document.write("</td>");
document.write("</tr>");
document.write("</table>");
但是不输出跟前面HTML语句一样的结果,我为什么要这样写呢?就是想把这些document.write()语句组织成一个函数中的语句,其中的style等属性中的值可以根据输入参数而改变。例如:
function drawDot(x,y,color,size){
document.write("<table border='0' cellspacing='0' cellpadding='0'><tr><td style='position: absolute; left:"+x);
document.write("; top: "+y);
document.write(";background-color:"+color+"'");
document.write(" width='"+size+"' height='"+size+"'></td></tr></table>");
} 但是这样没有输出,主要是第三句document.write()中color那块儿好想有点问题,但自己觉得还是正确的呀,但是一改那个地方就出错。
展开
 我来答
匿名用户
2012-04-27
展开全部
JS多用于浏览器端功能性质的交互作用,即使需要输入html内容,通常也是极短的内容,比如一句文字内容。像你这样用JS来生成大段的html,则是十分不推崇的,这样这段HTML的后期维护修改问题。一旦你后期需要修改这段HTML,你需要将定版的HTML在转化成JS,很繁琐很麻烦,甚至你还会遇到你今天这个问题。

你完全可以使用ASP、PHP等技术,根据需要将HTML封装成独立的文件。比如如果A情况,那么调用a.asp,以此类推。

或者你把HTML精简些,对关键部分进行JS封装,这也是减少出错的方法。
云上他
2012-04-27 · TA获得超过3551个赞
知道小有建树答主
回答量:1499
采纳率:0%
帮助的人:796万
展开全部
修改后代码如下,测试正常
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<script type="text/javascript">
document.write("<table border='0' cellspacing='0' cellpadding='0'>");
document.write("<tr>");
document.write("<td style='position:absolute;left:100;top:100;background-color:#000;'");
document.write(" width='",5,"'");
document.write(" height='",5,"'>");
document.write("</td>");
document.write("</tr>");
document.write("</table>");
function drawDot(x,y,color,size){
document.write("<table border='0' cellspacing='0' cellpadding='0'><tr><td style='position: absolute; left:"+x);
document.write("; top: "+y);
document.write(";background-color:"+color+"'");
document.write(" width='"+size+"' height='"+size+"'></td></tr></table>");
}
drawDot("200","200","#ccc","20","20");
</script>
</body>
</html>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
摩惠然0iD
2012-04-27 · TA获得超过1634个赞
知道小有建树答主
回答量:1162
采纳率:100%
帮助的人:839万
展开全部
首先你总得给你的js套一层script标签啊,好让浏览器知道你是在用js
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2012-04-27 · TA获得超过158个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:126万
展开全部
兄弟 不建议这么写啊 后期维护起来会累死人的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式