David Damasceno
David Damasceno

Reputation: 173

Replace text with HTML value when included in DIV

I have div's:

<div class="message">
   <div class="text-message">:D, :( Hello Wolrd!</div>
</div>

I want the result prints this:

<div class="message">
   <div class="text-message">
      <div class="smile-happy>":D</div>, 
      <div class="smile-sad">:(</div>  
      Hello Wolrd!
   </div>
</div>

My JavaScript:

var smile1 = ':)';
var replace = smile1.replace(smile1,'<span class="smile-happy" title="Smile">'+smile1+'</span>');
$(".smile-happy:contains(':D')")){
    $('.smile-happy').replaceWith(replace);
}

I really want to just replace the value of smiles **ex:** :D :( by a html with specific classes for each smile!

Upvotes: 2

Views: 85

Answers (1)

Pranav C Balan
Pranav C Balan

Reputation: 115232

Various ways are there, simply you can try something like this

$('div.text-message').html(function(i,v){
  return v.replace(':D','<div class="smile-happy">:D</div>')
          .replace(':(','<div class="smile-sad">:(</div>');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="message">
   <div class="text-message">:D, :( Hello Wolrd!</div>
</div>

Upvotes: 1

Related Questions