我正在尝试使用变量内部体.只是看到下面的示例代码
<body>
<div class="demo">
<script>
var count = 4;
for(i=1;i<=count;i++){
var varSlid = "A"+i;
$('.demo').append('<div id= varSlid ></div></br>');
}
</script>
</div>
</body>
但是它正在抛出错误。请检查并告诉我错误在哪里?
7条答案
按热度按时间klr1opcd1#
试试这个
vddsk6oq2#
错误在于 .demo 尚未完成解析,因此您不应尝试对其进行操作。这可能会在旧版本的IE("operation aborted",任何人?)中导致严重问题。请将脚本移动到
<div>
标记之外:正如其他人所指出的,您还需要引号来将变量引入HTML字符串,尽管这不会导致任何错误-您最终得到的只是一堆具有相同id(“varSlid”)的元素。
33qvvth13#
也许是我缺乏jQuery-fu...但是
</br>
不应该是<br/>
吗?此外,您不应该创建4个元素
<div id= varSlid >
,因为id
属性应该是唯一的。**编辑:**您可能希望使用变量
varSlid
的值作为id
属性,但现在它是硬编码字符串文字的一部分。eh57zj3b4#
试试这个...
也将整个函数 Package 在
on dom ready
中,如下所示fwzugrvs5#
将:
$('.demo').append('<div id= varSlid ></div></br>');
更改为:$('.demo').append('<div id=' + varSlid + ' ></div></br>');
3hvapo4f6#
它是:
$('.demo').append('<div id="' + varSlid + '"></div></br>');
hjzp0vay7#
我不真实的清楚OP最初的问题,但这符合标题。
HTML5有一个data-* 属性,这里的 * 代表你的数据,我很幸运地把Web.py(python)变量从模板传递到js函数。
https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes