【发布时间】:2013-03-04 17:56:11
【问题描述】:
假设文本 KEYWORDANIMAL:(Cat) 出现在页面上。我想在页面中搜索 KEYWORDANIMAL 的所有实例,然后将实际的动物(在本例中为 Cat)拉到一个变量中,以在另一个脚本中使用,该脚本将拉入相关内容。我还想用一个空的 div 替换 KEYWORDANIMAL:(Cat) 并连接 ID 以供其他脚本作为目标(这个其他脚本本身已经可以正常工作)。
我一直在这里使用来自其他几个线程的信息,但无法将它们全部融合在一起。
-Find text string using jQuery?
-Get text from character and after using jQuery
-How do I use JQuery to replace all occurring of a certain word in a webpage?
这是我目前所拥有的:
<p>Here is an animal: KEYWORDANIMAL(Cat)</p>
var findString = $('p:contains("KEYWORDANIMAL")').html();
var startIDString = findString.indexOf('(') + 1;
var endIDString = findString.indexOf(')');
var animalID = findString.substring(startIDString, endIDString);
var embedString1 = "<div id=\"";
var embedString2 = "\"></div>";
var embedStringFull = embedString1 + "animal" + animalID + embedString2;
alert(embedStringFull);
findString.each(function () {
var newDIV = $(this).html().replace('KEYWORDANIMAL', embedStringFull);
$(this).html(newDIV);
});
小提琴形式:http://jsfiddle.net/dC6bj/1/
我找到了部分(虽然可能效率不高),但我显然在替换时遗漏了一些东西。
【问题讨论】:
标签: javascript jquery replace find