我正在尝试使用VARIABLE作为ATTRIBUTE值......
我有:
var text = "Hello!";
,HTML是:
<li class="pro" id="text">
---&gt; (我希望属性ID等于TEXT变量)
我该如何做到这一点?
谢谢
修改
我的问题会更具体。
这就是我真正拥有的:
<li class="product" name="RD-101" price="18" minimum="4" gap="4">
<a class="product-image fancybox" href="images/product_big.jpg" title="Picture 4">
<img src="images/product_2.png" alt="Preview"/>
<div class="text-overlay">
<p class="product-heading">Description</p>
Enseignes résidentielles imprimées sur 2 panneaux 4 mm 36” x 24” collés dos à dos.
</div>
</a>
<p class="product-heading">RD-101 (Simple)</p>
<a href="#" id="test" class="product-buy">Ajouter au panier</a>
<p class="product-meta">Double de pareterre 32x24</p>
<div class="product-price">18<span class="product-currency">$</span></div>
</li>
如您所见,我使用在Javascript代码中设置的自定义属性。 我想知道如何设置(例如)... PRICE属性为VARIABLE VALUE而不是数字“18”,就像我现在粘贴在那里一样。
我在考虑像 - &gt;
这样的东西<li class="product" name="RD-101" price="MY_VARIABLE_HERE" minimum="4" gap="4">
答案 0 :(得分:2)
将$("li.pro").attr('id', text);
与jQuery一起使用
请记住属性name
对<li>
编辑:
如果没有jQuery,此代码会向所有price
元素添加li
(无效)属性
<ul id="my_ul_id">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
-
var text = 'Hello';
var arr_li = document.getElementById("my_ul_id").getElementsByTagName("li");
for(var i=0 ; i<arr_li.length ; i++)
{
arr_li[i].setAttribute('price', text);
}
最后,我们说price
不是有效的属性。
如果您希望HTML文档有效,请查看here
答案 1 :(得分:2)
由于您已指定“javascript”而不是“jquery”,因此您可以执行以下操作...
<script type="text/javascript">
var text = "Hello!";
document.getElementById("liItem").setAttribute("id",text);
</script>
<ul>
<li class="pro" id="liItem">
</ul>
已更新以反映属性从“名称”更改为“ID”
答案 2 :(得分:2)
您可以使用JQuery attr方法:
var theName = 'yourMom';
$('li.pro').attr('name', theName);
答案 3 :(得分:1)
$("li.pro").attr('name', text);
你可以使用属性的任何名称,你喜欢
答案 4 :(得分:1)
Javascript会将其设置为
<script type="text/javascript">
var text = "Hello!";
document.getElementById("changeMe").setAttribute("id",text);
</script>
<ul>
<li id="changeMe">
</ul>
setAttribute将提供的属性(第一个参数)设置为第二个参数的值...所以element.setAttribute(“name”,“john smith”)将名称设置为“john smith”和element.setAttribute( “class”,“math”)会将class属性设置为“math”。
答案 5 :(得分:1)
您也可以使用javascript模板库。
一些例子:
例如,使用JavascriptMVC,包含以下行(其中text实际上是JS变量)的ejs文件将转换为html:
<li class="pro" id="<%= text %>">
您可以在此处阅读: http://javascriptmvc.com/docs.html#!jQuery.View
欢迎来到Fantastic Infinite Javascript框架/图书馆世界:)!!