Question: I have a .NET MVC page with a list of items that each have
`<%: %>` encoded descriptions in the `rel`.
I want to be able to search for all items with a `rel` that contains my search query.

One of the fields has a value with htmlentities `rel='D&eacute;coration'`

I type "Décoration" in the search box, let jQuery search for all elements that have a 'rel' attribute that contains (indexOf != -1) that value:

**no results!**

Why? because `Décoration != D&eacute;coration`.

What would be the best solution to compare these two? (Has to work for all special accented characters, not just `&eacute;`)

P.S. (I tried escape/unescape on both sides, also tried the trick to append it to a div and then read it as text, this replaces dangerous stuff, but doesn't replace é (it doesn't have to because it's valid in utf-8 anyway))

Answer: 
Since the `&eacute;` and like are html entities, you can set the html content of a temporary div with the garbled string, and retrive the decoded string using the text content of the element. The browser will do the decoding work for you.

Using jQuery :
--------------

```
function searchInRel(needle) {
    return $('[rel]').filter(function(i,e) {
        var decodedText = $('<div/>').html(e.attr('rel')).text();
        return (decodedText.indexOf(needle) != -1);
    };
}

```

Using just the DOM :
--------------------

```
function decodeEntities(text) {
    var tempDiv = document.getElementById('tempDiv');
    tempDiv.innerHTML = text;
    return tempDiv.textContent;
}

```
You can decode the html entities.
Just copy the two javascript methods from [HERE](http://phpjs.org/functions/html_entity_decode:424)

```
var decoded = 'Décoration';
var entity = html_entity_decode('D&eacute;coration');
console.log(decoded == entity);

```