在变量中使用attr()添加类?

时间:2017-03-10 08:30:41

标签: javascript jquery

我试图在我的html文件中输出这个时遇到错误,JS看起来像这样:

$.getJSON('products.json', function(data){
    $.each(data.products, function(i, f){
        var launch = "<div"
        + attr("class", "testClass")
        + ">"
        + f.buyLink
        + "</div>"

如果我删除attr,它可以正常工作,但它会返回一个未捕获的参考错误。它的作用是从json获取数据并将其输出到html文件中的div但我似乎无法使用javascript为其添加类。

编辑:它本来是一个类,它输出:

<div class="testClass">f.buyLink</div>

2 个答案:

答案 0 :(得分:2)

您可以将其设为字符串:

var launch = "<div"
        + ' class="'+ f.buyLink + '"')
        + ">"
        + f.buyLink
        + "</div>

或者您创建元素并使用attr()属性。

var launch = $('<div>');
launch.attr("class", f.buyLink);
// alternative, note that f.buylink then should not have a dot!!
// launch.addClass( f.buyLink );
launch.text(f.buyLink);

或简写:

var launch = $('<div>').attr("class", f.buyLink).text(f.buyLink);

您不能像在代码中一样使用它们。

答案 1 :(得分:0)

试试这个

var launch = "<div class='testClass'>"+f.buylink+"</div>";