2010-12-13 6 views
8

à mon avis j'ai un objet, et je veux travailler avec ce onject de javascript je tente deobjet ruby ​​Parse en JavaScript (Rails)

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

cela fonctionne. mais si j'ai des symboles "'", de nouveaux symboles de chaînes, ,,, dans cet objet tout échoue. Avez-vous une bonne approche pour le faire?

+0

thx Falcon ......... ça m'aide :). Je suis confronté au même problème. –

Répondre

12

JSON est valide Javascript dès la sortie de la boîte, alors pourquoi ne pas faire simplement:

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

+1! Mon cerveau m'a quitté. Je ne peux pas croire que je n'ai pas vu ça. – jwueller

+1

JSON ce n'est pas un objet - c'est juste un texte – Falcon

+0

@Falcon: JSON est un JavaScript valide. Cela fonctionne comme ça. JSON (JavaScript Object Notation) est un sous-ensemble de la syntaxe JavaScript. C'est la bonne réponse. Oublie le mien. – jwueller

3

Je trouve que ce soit la meilleure façon. Travaillé à chaque fois

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