2010-12-13 11 views
8

moim zdaniem mam jeden obiekt i chcesz pracować z tym onject z javascript próbujęParse rubin obiektu w JavaScript (szyny)

var js_obj = jQuery.parseJSON('<%=raw @rails_obj.to_json %>'); 

to działa. ale jeśli mam symbole "" ", nowe symbole ciągów ,,, w tym obiekcie kończą się niepowodzeniem.

Czy ktoś ma dobre podejście, aby to zrobić?

+0

thx Falcon ......... to mi pomaga :). Stoję w obliczu tego samego problemu. –

Odpowiedz

12

JSON jest ważny JavaScript zaraz po wyjęciu z pudełka, więc dlaczego nie zrobić:

var js_obj = <%= @rails_obj.to_json %>; 
+0

+1! Mój mózg mnie opuścił. Nie mogę uwierzyć, że tego nie widziałem. – jwueller

+1

JSON to nie jest obiekt - to tylko tekst – Falcon

+0

@Falcon: JSON jest poprawnym JavaScript. To działa tak. JSON (JavaScript Object Notation) to podzestaw składni JavaScript. To jest poprawna odpowiedź. Zapomnij o mojej. – jwueller

3

Uważam, że jest to najlepszy sposób. Pracowałem za każdym razem

<%= javascript_tag "var obj = #{@obj.to_json}" %>