# Onclick problem

**URL:** <https://www.ruby-forum.com/t/onclick-problem/145404>\
**Category:** Rails\
**Created:** [August 8, 2008, 9:02pm UTC](https://www.ruby-forum.com/t/onclick-problem/145404 "2008-08-08T21:02:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jturney](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e99b99/32.png) [@jturney](https://www.ruby-forum.com/u/jturney)\
**Post date:** [August 8, 2008, 9:02pm UTC](https://www.ruby-forum.com/t/onclick-problem/145404/1 "2008-08-08T21:02:47Z")

</div>

onclick=“document.forms[‘search\_form’].search\_title.value=’\<%= u[0]  
%\>’;”

When u[0] = blah’blah (with a single quote), i get the error in firebug:  
missing ; before statement  
[Break on this error]  
document.forms[‘search\_form’].search\_tit…f(getElementById(‘search\_id’).value==’’)

…value=‘blah’blah’; is causing problems. I guess the ’ is ending the  
string. How can I workaround this, while still retaining the '?

Thanks

---

<div class="post-metadata">

**Author:** ![jturney](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e99b99/32.png) [@jturney](https://www.ruby-forum.com/u/jturney)\
**Post date:** [August 8, 2008, 10:16pm UTC](https://www.ruby-forum.com/t/onclick-problem/145404/2 "2008-08-08T22:16:40Z")

</div>

> …value=‘blah’blah’; is causing problems. I guess the ’ is ending the  
> string. How can I workaround this, while still retaining the '?

Convert it to " using one of the rails helpers or CGI htmlescape  
methods…

It should still appear as a ’ in your form.

---

<div class="post-metadata">

**Author:** ![jturney](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e99b99/32.png) [@jturney](https://www.ruby-forum.com/u/jturney)\
**Post date:** [August 8, 2008, 10:39pm UTC](https://www.ruby-forum.com/t/onclick-problem/145404/3 "2008-08-08T22:39:31Z")

</div>

> …value=‘blah’blah’; is causing problems. I guess the ’ is ending the  
> string. How can I workaround this, while still retaining the '?

Just escape it. I think there’s already a function in rails for  
escaping strings for javascript.

Fred

---

<div class="post-metadata">

**Author:** ![jturney](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e99b99/32.png) [@jturney](https://www.ruby-forum.com/u/jturney)\
**Post date:** [August 8, 2008, 10:57pm UTC](https://www.ruby-forum.com/t/onclick-problem/145404/4 "2008-08-08T22:57:40Z")

</div>

escape\_javascript(something)

On Aug 8, 1:38 pm, Frederick C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![jturney](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/e99b99/32.png) [@jturney](https://www.ruby-forum.com/u/jturney)\
**Post date:** [August 9, 2008, 1:26am UTC](https://www.ruby-forum.com/t/onclick-problem/145404/5 "2008-08-09T01:26:28Z")

</div>

Richard L. wrote:

> escape\_javascript(something)
> 
> On Aug 8, 1:38 pm, Frederick C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

Sweet, works great, thanks!
