首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript innerHTML

JavaScript innerHTML
EN

Stack Overflow用户
提问于 2010-02-24 18:44:48
回答 6查看 2.9K关注 0票数 1

为什么这个不起作用?innerHTML不能接受这么复杂的东西吗?

代码语言:javascript
复制
<html>
<head>
    <script type="text/javascript">
        function addTable() {
            var html = "<table><tr><td><label for="name">Name:</label></td><td><input type="text" id="name"></input></td></tr>"; +
                "<tr><td><label for="remarks">Remarks:</label></td><td><input type="text" id="remarks"></input></td></tr></table>";
            document.getElementById("addtable").innerHTML = html;
        }
    </script>


</head>
<body>
    <input type="submit" value="New Table" onClick="addTable()"/>
    <div id="addtable"></div>
</body>
</html>

像下面这样不那么复杂的东西可以工作:

代码语言:javascript
复制
var html = "<table><tr><td>123</td><td>456</td></tr></table>";
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-02-24 18:47:20

您需要在指定给html变量的字符串中转义双引号,或者只用单引号将字符串括起来。使用带有语法突出显示的文本编辑器,这样的错误会立即跳出来。你的赋值中也有一个额外的分号。

票数 5
EN

Stack Overflow用户

发布于 2010-02-24 18:47:52

您的报价已损坏。字符串中使用了双引号:

代码语言:javascript
复制
"<tr><td><label for="remarks">Remarks:</label></td><td><input .... 

Firefox error console应该始终是您的第一站,这样的错误总是记录在那里。

票数 1
EN

Stack Overflow用户

发布于 2010-02-24 18:48:13

字符串使用双引号分隔,并在字符串中使用双引号。切换到在字符串中使用单引号。

代码语言:javascript
复制
var html = "<table><tr><td><label for='name'>Name:</label></td><td><input type='text' id='name'></input></td></tr>"; +
"<tr><td><label for='remarks'>Remarks:</label></td><td><input type='text' id='remarks'></input></td></tr></table>";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2325312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档