Javascript 通过文本连接2个列表并添加值
我想将括号中的值从第二个列表转移到第一个列表。我试着这样做:Javascript 通过文本连接2个列表并添加值,javascript,jquery,Javascript,Jquery,我想将括号中的值从第二个列表转移到第一个列表。我试着这样做: $('#views-exposed-form-cat-watch-block .form-type-radio label.option').each(function(){ var a = this; $('#block-views-tags-block .views-field-name a').each(function(){ var b = this; if($(a).text(
$('#views-exposed-form-cat-watch-block .form-type-radio label.option').each(function(){
var a = this;
$('#block-views-tags-block .views-field-name a').each(function(){
var b = this;
if($(a).text().indexOf(b)!=-1){
var c = $(b).closest('.views-row').find('.views-field-nid .field-content').text();
$(a).after('<span>'+c+'</span>');
}
});
});
你几乎让你的工作。我唯一更改的是您提供的以下行版本:
if($(a).text() == $(b).text())
您提供的版本的问题是b
是一个DOM元素,因此indexof
将始终返回-1。将b
转换为文本后,一切都将正常工作。接下来您会注意到,因为您使用的是索引,所以第一个项目Word
在所有三个项目中都显示为子字符串。为了绕过这一点,我只是将其设置为文本必须相等,以防止这种重叠
$(function() {
$('#views-exposed-form-cat-watch-block .form-type-radio label.option').each(function(){
var a = this;
$('#block-views-tags-block .views-field-name a').each(function(){
var b = this;
if($(a).text() == $(b).text()){
var c = $(b).closest('.grid-1-4').find('.views-field-nid .field-content').text();
$(a).after('<span>'+c+'</span>');
}
});
});
});
$(函数(){
$('#查看暴露的表单cat手表块。表单类型radio label.option')。每个(函数(){
var a=此;
$('#块视图标记block.views字段名a')。每个(函数(){
var b=这个;
如果($(a).text()==$(b).text()){
var c=$(b).最近('.grid-1-4').find('.views-field-nid.field-content').text();
$(a).在(''+c+'')之后;
}
});
});
});
$(function() {
$('#views-exposed-form-cat-watch-block .form-type-radio label.option').each(function(){
var a = this;
$('#block-views-tags-block .views-field-name a').each(function(){
var b = this;
if($(a).text() == $(b).text()){
var c = $(b).closest('.grid-1-4').find('.views-field-nid .field-content').text();
$(a).after('<span>'+c+'</span>');
}
});
});
});