views:

614

answers:

3

I have a situation where I need to pass a string with an apostrophe in it to a javascript function. This function then takes the string and uses it to find the element by id in the DOM. As an example, I need to call:

showElement('what's')

function showElement(element_id){
     document.getElementById(element_id).style.display = "block";
}

I tried escaping the apostrophe like showElement('what\'s') but that did not seem to work. Is this possible at all?

A: 

Have a look at JavaScript Escape Characters

Try using a backslash \

Something like

showElement('what\'s') 

function showElement(element_id){ 
     document.getElementById(element_id).style.display = "block"; 
} 
astander
+1  A: 
showElement("what's")

Double quote around string with single quote inside.

Jason w
+1  A: 

You have entirely different problem here. id attribute can't have ' symbols inside and you won't be able to search for such an id with getElementById. Escaping works though, just not in this case.

vava