按类和自定义属性值查找元素(然后更新它)

时间:2015-02-01 16:03:06

标签: javascript jquery html fullcalendar

使用jQuery我想向特定的<td>添加一些HTML,其属性与我的值相匹配。

例如,我有一个值&#39; 2015-02-01&#39;,我想查找/搜索具有&#39; data-date =&#34;属性的<td>。 2015年2月1日&#34;&#39;并将HTML附加到匹配的值,在此示例中为<td>1</td>

<div class="fc-content-skeleton">
<table>
<thead>
<tr>
<td data-date="2015-02-01" class="fc-day-number">1</td>
<td data-date="2015-02-02" class="fc-day-number">2</td>
<td data-date="2015-02-03" class="fc-day-number">3</td>
<td data-date="2015-02-04" class="fc-day-number">4</td>
<td data-date="2015-02-05" class="fc-day-number">5</td>
<td data-date="2015-02-06" class="fc-day-number">6</td>
<td data-date="2015-02-07" class="fc-day-number">7</td>
</tr>
</thead>
</table>
</div>

我没有任何示例代码,因为我真的陷入了如何处理这个问题。

// This only gives me the value of the attribute
$this.parent().find('.fc-day-number').attr('data-date');

3 个答案:

答案 0 :(得分:7)

只需使用语法为[attributeName[=attributeValue]]

attribute selector即可
var value = "2015-02-01";
$('[data-date="' + value + '"]').append('html here');

注意,您可以在findclosest和其他接受CSS选择器的jQuery方法中应用上述选择器。

答案 1 :(得分:2)

使用jQuery Attribute Equals selector

然后使用jQuery html()添加内容

或使用jQuery append()添加内容

这是html() fiddle

答案 2 :(得分:0)

我认为你想要:

var date = "2015-02-03";

$("td[data-date='" + date + "']").append(date);

此网址上的解决方案:http://jsfiddle.net/g09jvfxy/1/