繁体   English   中英

仅使用普通javascript替换HTML的<>箭头

[英]Replacing <> arrows with HTML using only plain javascript

如何用锚替换<作为HTML包装器?

背景

我使用Twitter用户的名称获取JSON值,如<jgallardo949>

因为我不希望打印到页面:

  • 我想替换< with <a href="twitter.com/{{data.author}}">
  • ></a>
  • 代码的最终结果将是<a href="twitter.com/jgallardo949">jgallardo949</a>
  • 页面上的最终结果将是:jgallardo949

我引用了其他类似的问题,我可以在这里和其他地方找到。 我得到了关于替换字符串文本javascript的答案的开始

我的后续实践奏效了。 但特别是>符号正在挑战,或者我错过了什么?

前两个工作,最后一个不工作

HTML

<div class="label">With Profits Financial Strength:</div>
<div class="data rating">****</div>
<div class="data2 thing">+</div>
<div class="author twitter"> > </div>

JS

var str=document.getElementsByClassName("data" ,"raiting")[0].innerHTML; 
var n=str.replace(/\*/g,"star");
document.getElementsByClassName("data", "raiting")[0].innerHTML=n;



var str2=document.getElementsByClassName("data2" ,"thing")[0].innerHTML; 
var n2=str2.replace(/\+/g,"<h1>moon</h1>");
document.getElementsByClassName("data2", "thing")[0].innerHTML=n2;


var str3=document.getElementsByClassName("author" ,"twitter")[0].innerHTML; 
var n2=str3.replace(/\>/g,"<h1>moon3</h1>");
document.getElementsByClassName("author", "twitter")[0].innerHTML=n2;

在此输入图像描述

HTML中的A >将返回&gt; 所以这样做(\\>|&gt;) ,它会找到两者。

var n2=str3.replace(/(\>|&gt;)/g,"<h1>moon3</h1>");

堆栈代码段

 var str=document.getElementsByClassName("data" ,"raiting")[0].innerHTML; var n=str.replace(/\\*/g,"star"); document.getElementsByClassName("data", "raiting")[0].innerHTML=n; var str2=document.getElementsByClassName("data2" ,"thing")[0].innerHTML; var n2=str2.replace(/\\+/g,"<h1>moon</h1>"); document.getElementsByClassName("data2", "thing")[0].innerHTML=n2; var str3=document.getElementsByClassName("author" ,"twitter")[0].innerHTML; var n2=str3.replace(/(\\>|&gt;)/g,"<h1>moon3</h1>"); document.getElementsByClassName("author", "twitter")[0].innerHTML=n2; 
 <div class="label">With Profits Financial Strength:</div> <div class="data rating">****</div> <div class="data2 thing">+</div> <div class="author twitter"> > </div> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM