2013-08-28 7 views
-2

jQuery를 사용하여 쉼표 뒤에 스팬을 삽입 할 수 있기를 원합니다. JQuery를 사용하여 쉼표 뒤에 div에 스팬 삽입

<div class="title">Some text,<span class="something"> with a comma.</span></div> 

는 HTML 쉼표 후에 만 ​​대상 또는 텍스트를 추가 할 수있는 방법이 있나요 :

내가 그들 모두를 만들고 싶어
<div class="title">Some text, with a comma.</div> 
    <div class="title">Some text, with a comma.</div> 
    <div class="title">Some text, with a comma.</div> 
    <div class="title">Some text, with a comma.</div> 
    <div class="title">Some text, with a comma.</div> 
    <div class="title">Some text, with a comma.</div> 

는 다음과 같이 : I는 다음과 같이 된 div의 번호를 가지고 제목의 종류?

$(".title").html(function (index, html) { 
    var commaIndex = html.indexOf(","); 
    var beginningHtml = html.substring(0, commaIndex + 1); 
    var endingHtml = html.substring(commaIndex + 1); 
    return beginningHtml + "<span class=\"something\">" + endingHtml + "<\/span>"; 
}); 

여기 내 코드에 대한 a jsFiddle입니다 :

+5

당신은 무엇을 시도? 문제를 해결하기 위해 만든 코드를 게시하십시오. –

+3

쉼표가 두 개 이상이면 어떨까요? 새 요소를 각 인스턴스에 대해 복제해야합니까, 아니면 처음, 마지막 또는 다른 인스턴스에 삽입해야합니까? 또한 엄밀히 말하면 질문에 대한 대답은 '예'입니다. 더 긴 대답은 당신이 원하는 것, 당신이 가질 수있는 제약과 요구 사항에 달려 있다는 것입니다. –

+0

Okay guys .... 이걸 망각으로 downvoting하기 전에 몇 분 정도 줘. – gan

답변

1
$('.title').html(function(i, v){ 
    var html = v.split(','); 
    return html[0] + ',' + '<span class="something">' + html[1] + '</span>' 
}); 

http://jsfiddle.net/udjCs/2/

+0

함수를'.html()'에 넘겨 주려면'$ (this) .html()'대신에 콜백에 두 번째 매개 변수를 사용할 수 있습니다. http://jsfiddle.net/udjCs/1/ –

-1

가장 좋은 부분으로 HTML 문자열을 슬라이스 한 다음 해당 구문 분석 아마.

+0

왜 downvote? – mc10

0

당신은 다음과 같이 수행 할 수 있습니다

$('div.title').each(function(){ 
    $(this).html($(this).html().replace(',', ', <span class="something">')); 
}); 

을하지만 난 여전히 당신은 당신이 더 필요한 설명 할 필요가 있다고 생각합니다.

관련 문제