我所拥有的是一个函数,它生成存储在javascript var中的字符串。我想要做的是将var指定为页面上div的id。我一直在尝试将变量设置为div ID,但我在这方面遇到了一些困难。
<script>
var rand = "arandomstring"
</script>
<div id= $(rand) class = "outline">
<b>Some Sample Text</b><br>
</div>
我是否正确分配变量?这似乎是div id = "$(rand)"
而不是"arandomstring"
。
任何帮助都将不胜感激。
答案 0 :(得分:2)
下面的代码将分配变量&#34; rand&#34;的值。到您的div的ID
HTML代码:
<div name="arandomstring" class="outline">
<b>Some Sample Text</b></br>
<div>
的Javascript
<script>
var rand = 'some_data';
$(".arandomstring").attr("id", rand);
</script>
答案 1 :(得分:0)
您不能将JavaScript放在HTML中的大多数属性中 - 只有onevent
属性(例如onclick=""
,onmouseover=""
)和href=""
(带javascript:
URI方案)。
相反,请使用初始id=""
值:
<div id="temp" class="outline"><b>some sample text</b></div>
var rand = getNewId();
var div = document.getElementById("temp");
div.setAttribute("id", rand);
答案 2 :(得分:0)
引号是可选的,因此id= $(rand)
会转换为id= "$(rand)"
。
此外,除非是像onclick等或href这样的事件属性,否则不要在标记中添加Javascript。
你可以做到
<div class = "outline">
<b>Some Sample Text</b><br>
</div>
<script>
var rand = "arandomstring";
document.querySelector(".outline").id = rand;
alert(document.documentElement.innerHTML);
</script>
答案 3 :(得分:0)
从我看到的看起来你正在使用jQuery。以下是将此变量指定为id的方法:
<script>
var rand = "arandomstring";
$('.outline').attr('id', rand);
</script>
<div class="outline">
<b>Some Sample Text</b><br>
</div>