2013-05-24 2 views
0

내 애플리케이션이 내 웹 사이트에서 동적으로 HTML 코드를 가져 와서 String으로 저장합니다.JS : 태그의 innerHTML 바꾸기

Lorem ipsum <a href="http://www.google.com">Click Here</a> 
Lorem ipsum <a href="http://www.google.com">Click Somewhere</a> 
Lorem ipsum <a href="http://www.google.com">sdfsdf</a> 
Lorem ipsum <a href="http://www.google.com">djmhfhb</a> 
Lorem ipsum <a href="http://www.google.com">fgbnfgn</a> 

내가 지금 필요한 것은 모든 태그를 받아 "LINK"자신의 innerHTML을 대체하는 스크립트는 다음과 같습니다

다음은 예입니다. 결과는 같아야합니다

Lorem ipsum <a href="http://www.google.com">LINK</a> 
Lorem ipsum <a href="http://www.google.com">LINK</a> 
Lorem ipsum <a href="http://www.google.com">LINK</a> 
Lorem ipsum <a href="http://www.google.com">LINK</a> 
Lorem ipsum <a href="http://www.google.com">LINK</a> 

나는 보통 이런 식으로 jQuery를 사용하십시오 :

$(a).html = "Link" 

하지만 내 응용 프로그램의 링크의 innerHTML을 제거하지 않지만 문자열 내부의 그 어떤 내 웹 사이트의 HTML을 포함합니다.

저는 PHP를 사용하지 않습니다. 나는 나를 도와주는 JS를 사용한다. 아이디어가 있으십니까? 당신의 도움을 주셔서 대단히 감사합니다!

답변

0

이것은 당신이 jQuery를 함께 그렇게하는 방법입니다

$('a').text('LINK'); 
0

사용 jQuery의 .text() 예를 들어

:

$("a").text("LINK"); 
0

anchar 태그

에 ID를 제공 JS 스크립트 이 코드를 사용해보십시오
<a href="www.google.com" id="hello" />Click<a>  

와 같이 사용이

$('#hello').html('LINK'); 

또는

$('a').text('LINK'); 
+0

대단히 감사합니다! – Florian

0

앱에서 jQuery를 읽어 들이게된다() 또는는 .text()를 사용하지만이 포함 된 문자열을 조작 싶지 않을 이유가 불분명 html 대신에?

var pattern = "<a .*?href=['""](.+?)['""].*?>(.+?)</a>"; 

같은 정규식 패턴의 어떤 종류를 필요로하고하려면 string.replace이

뭔가 같은 정규식 객체를 전달 사용하는 것을하는

var regex = new RegExp(pattern); 
"yourString".replace(regex , "LINK"); 
0

를 IF 그 마크 업을 문자열로이 아닌 DOM 조각으로 가져 오면 시도 할 수 있습니다. 입니다 :

http://jsfiddle.net/YVb5k/

var str="HTML markup"; 
if ((new DOMParser()).parseFromString("", "text/html")) { 
    var html = (new DOMParser()).parseFromString(str, "text/html"); 
} else { 
    var html = document.implementation.createHTMLDocument(""); 
    html.body.innerHTML = str; 
} 
var as = html.getElementsByTagName("a"); 
for (var i = 0; i < as.length; i++) { 
    as[i].innerHTML = "LINK"; 
} 
console.log(html.body.innerHTML); 

작품에만 IE에서> = 9,하지만.