我目前正在尝试创建嵌套循环,以便将可点击的定义应用于几个文本块中的单词。第一个外部循环遍历每个类中的定义名称和ID&n;概念&#39;并创建一个由内循环使用的新<span>
。然后内循环遍历原始文本的每个块。并替换&#39; nounName&#39;的每个实例。使用在第一个循环中创建的<span>
模板。这是代码......
$(document).ready(function(){
$('.n-concept').each(function(){
var nounName = $(this).find('h3').html();
var nounID = $(this).attr('id');
var newString = '<span data-vocabID="'+nounID+'" class="noun-name">'+nounName+'</span>';
$('.original-text').each(function(){
var newText = $(this).text().replace(RegExp(nounName, 'gi'), newString);
$(this).html(newText);
});
});
});
目前,循环正在运行,但只有“&n”概念的最后一次迭代的值才有效。正在应用循环,即,它不保留原始文本的改变值。我对javascript和jquery有点新意,请原谅我,如果这是一个非常简单的问题需要解决。从阅读起,似乎关闭是我在这里可能需要的?任何帮助将不胜感激:)
答案 0 :(得分:0)
您应该使用Pair<MyObject, RefData>
方法而不是html()
,因为text()方法会忽略您在上一次迭代中添加的范围。