【问题标题】:Selecting specific class and add title to it with Jquery使用 Jquery 选择特定的类并为其添加标题
【发布时间】:2018-05-25 17:38:31
【问题描述】:

我目前正在从事一个项目,我从 csv 中检索大量数据,我已将这些数据转换为包含一百多个对象的数组。每个对象包含 15 个数据点,如下所示。

我在下面做的是选择一个特定的类 (.centrale-vak__key) 并附加一个跨度与数据文件中的 item["Items in CHILDoc"] 匹配的类。之后,它将同一个项目中的文本[“CHILDoc 中的项目”] 添加到跨度中。

$.each(data1, function (index, item) {
      if (item["Kwadrant in CHILDoc"] == "Centrale vak") {
            $(".centrale-vak__key").append("<span class='item-childoc_" + item["Items in CHILDoc"].replace(/[^a-zA-Z0-9]/g,'') +"'>" + item["Items in CHILDoc"] + "</span>" + "<br>");
      }
})

我想做的是为每个创建的跨度添加一个标题(数据文件中有几个“Centrale vak”项目)。为此,我想使用另一个数据变量(data2)。到目前为止,我有这个 sn-p。

        $.each(data2, function(index, item){
            if (item["Kwadrant in CHILDoc"] == "CHILDoc") {
                $(".item-childoc_ " + item["Items in CHILDoc"].replace(/[^a-zA-Z0-9]/g,''))
                    .attr("title", item["Items in CHILDoc"]);
            }
        })

由于某种原因,类选择器无法正常工作。在它周围添加额外的“”也不起作用。有没有更简单的方法来解决这个问题?

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    试试这个代码:

      $.each(data2, function(index, item){
            if (item["Kwadrant in CHILDoc"] == "CHILDoc") {
                $(".centrale-vak__key").find(".item-childoc_ " + item["Items in CHILDoc"].replace(/[^a-zA-Z0- 
                9]/g,'')).first().prop("title", item["Items in CHILDoc"]);
            }
        })
    

    【讨论】:

    • 我认为解释是您正在向 DOM 添加新项目,一直使用 jQuery 您必须引用现有元素,然后挖掘/查找创建的元素,同样理论适用于事件(例如 onclick)
    • 这种解释很有帮助。现在你告诉我说得通了。
    • 是否需要 .first()?当我删除它时,它似乎并没有改变结果。
    猜你喜欢
    • 2012-01-12
    • 1970-01-01
    • 2011-01-10
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    • 2020-03-29
    • 1970-01-01
    • 2010-12-27
    相关资源
    最近更新 更多