# Observe field & javascript

**URL:** <https://www.ruby-forum.com/t/observe-field-javascript/128036>\
**Category:** Rails\
**Created:** [February 4, 2008, 2:58pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036 "2008-02-04T14:58:21Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![KTU](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/ecae2f/32.png) [@KTU](https://www.ruby-forum.com/u/KTU)\
**Post date:** [February 4, 2008, 2:58pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036/1 "2008-02-04T14:58:21Z")

</div>

Hi

How I can change this:

\<%= radio\_button(“response\_item”, id, 1) %\>\<%= h(imitem.grpname) %\>\<br/

> Help

to work on radio button selection to call that same showdesc  
javascript ? ie. I want to embed that javascript  
inside of radio button so that once it is selected (clicked) it will  
launch javascript call to showdesc call.

---

<div class="post-metadata">

**Author:** ![KTU](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/ecae2f/32.png) [@KTU](https://www.ruby-forum.com/u/KTU)\
**Post date:** [February 4, 2008, 4:24pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036/2 "2008-02-04T16:24:09Z")

</div>

This works ok

\<%= radio\_button(“response\_item”, id, 1, :onchange =\> “showdesc(‘4’)”)  
%\>

but now how can i replace value=4 with db id ?

\<% for imitem in @imitems %\>  
\<%= radio\_button(“response\_item”, id, 1, :onchange =\> “showdesc(‘4’)”)  
%\>\<%= h(imitem.grpname) %\>  
  
\<% end %\>

I tried this one:

\<%= radio\_button(“response\_item”, id, 1, :onchange =\> “showdesc(’\<%=  
h(imitem.id) %\>’)”) %\>

but this throws an error:

compile error  
/usr/local/webhome/mdm/app/views/imitems/showgroup.html.erb:11: syntax  
error, unexpected tCONSTANT, expecting ‘)’  
\_erbout.concat(( submit\_tag ‘Next’ ).to\_s); \_erbout.concat “\n”  
^  
/usr/local/webhome/mdm/app/views/imitems/showgroup.html.erb:11:  
unterminated string meets end of file  
/usr/local/webhome/mdm/app/views/imitems/showgroup.html.erb:11: syntax  
error, unexpected $end, expecting ‘)’

---

<div class="post-metadata">

**Author:** ![KTU](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/ecae2f/32.png) [@KTU](https://www.ruby-forum.com/u/KTU)\
**Post date:** [February 4, 2008, 6:36pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036/3 "2008-02-04T18:36:08Z")

</div>

Hi

Thanks for this one. One more thing.

\<%= radio\_button :imitem, :id, imitem.id, :id =\> “id”, onchange =\>  
“showdesc()” %\> \<%= h(imitem.grpname) %\>  
  
\<%= radio\_button(“id”, id, 1, :onchange =\>  
“showdesc(‘#{h(imitem.id)}’)”) %\> \<%= h(imitem.grpname) %\>

What about 1st line. It does not like onchange setting in there. Now  
if I use 2nd line I get strange HTML code like this:

demo

I would like this to be just

demo

On Feb 4, 6:14 pm, Frederick C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![KTU](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/ecae2f/32.png) [@KTU](https://www.ruby-forum.com/u/KTU)\
**Post date:** [February 4, 2008, 6:39pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036/4 "2008-02-04T18:39:39Z")

</div>

ok I found the answer.

It needs to be like this:

\<%= radio\_button :imitem, :id, imitem.id, :id =\> “id”, :onchange =\>  
“showdesc (’#{h(imitem.id)}’)” %\> \<%= h(imitem.grpname) %\>

---

<div class="post-metadata">

**Author:** ![KTU](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/ecae2f/32.png) [@KTU](https://www.ruby-forum.com/u/KTU)\
**Post date:** [February 4, 2008, 5:15pm UTC](https://www.ruby-forum.com/t/observe-field-javascript/128036/5 "2008-02-04T17:15:46Z")

</div>

On 4 Feb 2008, at 15:23, KTU wrote:

> %\>\<%= h(imitem.grpname) %\>  
>   
> \<% end %\>
> 
> I tried this one:
> 
> \<%= radio\_button(“response\_item”, id, 1, :onchange =\> “showdesc(’\<%=  
> h(imitem.id) %\>’)”) %\>

At this point it’s just regular ruby (ie not an erb thingy) so

> \<%= radio\_button(“response\_item”, id, 1, :onchange =\>  
> “showdesc(’#{h(imitem.id)}’)”) %\>

Should do the trick

Fred
