2013-02-06 6 views
0

나는이 작업을하는 방법에 대해 매우 혼란 스럽다. 해결책을 찾는데 도움이되는 많은 온라인 조사를했지만 아무 것도 얻지 못했다. 이 링크는 여기에 있습니다 : http://viralpatel.net/blogs/jquery-get-text-element-without-child-element/하지만 아직 많이 도움이되지 않았습니다.어린이가없는 텍스트에 HTML 추가

이것은 내가 달성하려고하는 것입니다. 시스템이 이와 같은 텍스트를 출력하고 있으며, HTML을 제어 할 수 없습니다.

<div class="myclass"> 
Text 1 
Text 2 
Text 3   
</div>` 

하지만, 예를 들어 그 텍스트 주위에 HTML을 삽입 할 jQuery를 사용하고 싶습니다 : 어떤 도움이

을 감사

<div class="myclass"> 
<span>Text 1 </span> 
<span> Text 2 </span> 
<span> Text 3</span> 
</div> 

가 대단히 감사합니다

다른 방법이 있습니다
+1

가능한 중복 : http://stackoverflow.com/questions/4147080/can-i-wrap-each-line -of-multi-line-text-in-a-span – showdev

답변

0

. 이것은 질문을 만족시킬 것이다.

$(function(){ 

    stuff=$('.myclass').text().split("\n"); 

    newhtml=''; 
    $.each(stuff, function(i,o){ 
    if (o!=''){ 
     newhtml +='<span>' + o + '</span>'."\n"; 
    } 
    }); 
    $('.myclass').html(newhtml); 

}); 
0

이 그것을 분류한다 :

var theDivs = document.getElementsByClassName('myclass'); 

for(var i in theDivs) 
{ 
    if(parseInt(i)==i) 
    { 
     var div = theDivs[i]; 
     var text = div.innerHTML.split("\n"); 
     for(var k in text) 
     { 
      var trimmed = text[k].replace(/^\s+|\s+$/,''); 
      if(trimmed != '') text[k] = '<span>'+trimmed+'</span>'; 
      else text[k] = trimmed; 
     } 
     div.innerHTML = text.join("\n"); 
    } 
} 
2
$('.myclass').html(function(i, v){ 
    return '<span>' + $.trim(v).split('\n').join('</span><span>') + '</span>'; 
}); 

http://jsfiddle.net/vDp6A/

+0

대단히 감사합니다 !!!! 그것은 위대한 일하고 있습니다! – Kevin