我将根据字段的内容向字段中添加一个类,这样我就可以根据内容对每个字段进行不同的样式设置。想象一下汉堡的评级从1到10.我想用一个图像替换这个评级,另一个图像替换两个...and,以此类推。
为此,我需要每个字段类来反映字段内容。下面是我使用的代码:
Drupal.behaviors.burgerRating = {
attach: function (context, settings) {
var burgerRating = $('.field-name-field-rating2').text();
$('.field-name-field-rating2').addClass(burgerRating);
}
}这会将字段的内容输出为我可以样式的类。但是,在页面上有三个帖子的博客视图中,当我想要每个字段实例的每个特定字段内容时,这段代码将所有三个类添加到所有三个字段中。
我得到的是:
<div class="field-name-field-rating2 rating-1 rating-5 rating-8">
<div class="field-name-field-rating2 rating-1 rating-5 rating-8">
<div class="field-name-field-rating2 rating-1 rating-5 rating-8">而不是:
<div class="field-name-field-rating2 rating-1">
<div class="field-name-field-rating2 rating-5">
<div class="field-name-field-rating2 rating-8">我想我需要用.this()或.each()来处理这个问题,但是我无法让它正常工作。
有什么帮助吗?谢谢。
发布于 2014-10-03 12:55:09
为什么要在Javascript中这么做?你可以:
格式化程序是字段显示的方式。它取决于字段的类型(文本、数字、taxonomy_reference、.)。如果您的评等字段是文本字段,则必须为文本字段创建格式化程序。创建它之后,所有文本字段都可以使用此格式化程序。
您必须将此格式化程序与内容类型的显示选项卡上的字段相关联。

这是一个非常棒的系统,您也可以为您的格式化程序添加设置表单(hook_field_formatter_settings_form)
https://stackoverflow.com/questions/26179020
复制相似问题