2010-05-14 3 views
0

질문이 있습니다. 나는 오늘 아침에 일을하지만 어떻게해야할지 모르겠다. 여기 내 작업 (HTML) :js - html 요소를 대체하는 대체 방법 사용

<div class="demo"> 
    <p>this is demo text</p> 
</div> 
여기

내 JS :

var tempdata = $(".demo").text(); 
var replacedata = tempdata.replace("text","<span>1234</span>"); 

이 모든 것을 확인 봐. 결과는 this is demo <span>1234</span>입니다. 이것은 내가 원하는 결과가 아닙니다. replace 메서드를 사용하여이 문자열을 HTMLelement로 만드는 방법은 무엇입니까? 값을 다시 할당 할 때

답변

1

, 그래서 같이, 그것을 인코딩하지 않고 .text().html()를 사용

var tempdata = $(".demo").text(); 
var replacedata = tempdata.replace("text","<span>1234</span>"); 
$(".demo").html(replacedata);​​​​​​ 
또한

You can see a demo here

, 당신은 .html()하는 방법을 전달할 수 있습니다 다음과 같이 많은 요소에 대해이 작업을 수행하는 경우 :

$(".demo").html(function(i, h) { 
    return h.replace("text","<span>1234</span>"); 
});​ 

참고로이 코드는 .html()을 소스로 사용하지만 예제 코드에서는 차이가 없습니다.

You can see a demo of that here

+0

감사합니다. 나는 당신과 대답 :). – Rueta

+0

안녕하세요 닉! html (function (i, h) - "i"는 무엇을 의미합니까?) –

+0

@ming - 인수 2 개를 얻습니다. 첫 번째는 색인이고, 두 번째는 현재'.html()'값입니다. –

1
document.getElementById('demo').firstElementChild.innerHTML = 
    document.getElementById('demo').firstElementChild.innerHTML.replace(/text/, "<span>1234</span>"); 
관련 문제