Reputation: 1632
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?
Upvotes: 4
Views: 21682
Reputation: 25371
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.
Upvotes: 2
Reputation: 1138
showElement("what's")
Double quote around string with single quote inside.
Upvotes: 1
Reputation: 166326
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";
}
Upvotes: 5