javascript - How can I get rails to not render escaped quotes as \" -


मेरे लेआउट में मेरे पास

  & lt;% @ current_user.popups.each do | पी | & Gt%; & Lt;% content_for: स्क्रिप्ट करें% & gt; & Lt;% = "$ (दस्तावेज़) .ready (फ़ंक्शन () {$ .jGrowl (\" # {p.message} \ ", {चिपचि: सच})});" & Gt%; & Lt;% end% & gt; & Lt;% end% & gt;  

और फिर स्क्रिप्ट अनुभाग में मेरे पास

  & lt;% = उपज: स्क्रिप्ट% & gt;  

समस्या ये है कि यह बचने के उद्धरण को \ & amp; quot; के रूप में देता है और जावास्क्रिप्ट को यह पसंद नहीं है।

क्या मैं इसे रोक रहा हूं? या फिर इस पर एक और दृष्टिकोण है? मैं एकल उद्धरण चिह्नों का उपयोग नहीं कर सकता क्योंकि मुझे संदेश में कुछ html करना है। मैं किसी भी मदद की सराहना करता हूं।

क्या आप रेल 3 का प्रयोग कर रहे हैं? पटरियों में 3 html बचने डिफ़ॉल्ट रूप से किया जाता है और आपको हर बार इसे बायपास करना जैसा कि निम्न है: जेडीएल को सही विचार था, लेकिन ऐसा लगता है कि आपके पास अभी भी समस्याएं हैं

  & lt;% content_for: स्क्रिप्ट करें% & gt; $ (दस्तावेज़) .ready (फ़ंक्शन () {$ .jGrowl ("& lt;% = raw (p.message)% & gt;", {चिपचि: सत्य})}); & Lt;% end% & gt;  

लेकिन इससे भी बेहतर होगा कि वह रेल द्वारा प्रदान की जाने वाली सहायता : escape_javascript से बचें ताकि कैरेज़ रिटर्न और उद्धरण से बचें

इस तरह:

  $ (दस्तावेज़) .ready (फ़ंक्शन () {$ .jGrowl ("& lt;% = raw (escape_javascript (p.message))% & gt;" , {चिपचि: सच})});  

Comments