2011-11-19 10 views
9

निष्पादित नहीं कर रहा है यह एक बहुत ही अजीब समस्या है। मेरे पास एक रेल ऐप है जिसमें मैं यूजेएस का उपयोग करके दूसरे पृष्ठ पर एक आंशिक स्थान बदल रहा हूं। हाल ही में, यह काम करना बंद कर दिया, इसलिए मैंने यह प्रक्रिया देखने के लिए लॉगिंग शुरू कर दी कि यह कहां टूट गया। यहां मैंने पाया है:रेल यूज - जावास्क्रिप्ट

  • लिंक क्लिक करने के बाद, रेल कंसोल मुझे बताता है कि सभी आंशिक समेत सभी चीजें प्रदान की जाती हैं, और 200 ठीक होती हैं।
  • एक नियंत्रक कार्यों में डालता है ठीक रिटर्न
  • एक respond.do ब्लॉक रिटर्न ठीक में डालता है
  • एक .js.erb फ़ाइल में डालता है ठीक रिटर्न

इसका मतलब यह है कि यह सब हो रहा है .js.erb फ़ाइल चलाने और रूबी का मूल्यांकन करने के लिए कोई त्रुटि नहीं है। लेकिन यहां अजीब बात है - जावास्क्रिप्ट में से कोई भी निष्पादित नहीं हो रहा है। जब मैं .js.erb फ़ाइल में एक चेतावनी ('हैलो?') चलाता हूं, तो यह निष्पादित नहीं होता है।

क्या किसी ने कभी भी इस समस्या में भाग लिया है? यह बहुत अजीब लगता है कि यह एआरबी मूल्यांकन चलाएगा लेकिन जेएस नहीं। और जेएस कंसोल में कोई त्रुटि नहीं दिखाई देती है।

मेरे रिकॉर्ड के लिए: कैश साफ़ कर दिया गया है, ब्राउज़र को पुनरारंभ किया है, रेल ऐप को पुनरारंभ किया है, और कुछ भी नहीं बदला है।

नमूना कोड:

# view 
link_to 'example', some_path, :remote => true 

# controller 
respond_to do |format| 
    format.js 
end 

# .js.erb file 
alert('this never shows up'); 
<% puts 'this shows up in the rails console' %> 

धन्यवाद सू जो कोई भी इस अजीब समस्या पर प्रकाश का एक सा शेड कर सकते हैं के लिए बहुत कुछ!

+0

कुछ भी (ऐसा ही एक पर्यावरण मेरी मशीन पर ठीक चलाता है)? –

+0

"और जेएस कंसोल में कोई त्रुटि नहीं दिखाई देती है।" –

+1

क्षमा करें; मैं संयोजन के साथ शुरू होने वाले वाक्यों को स्वचालित रूप से अनदेखा करता हूं। –

उत्तर

9

किसी भी मौके में जेएस में कोई त्रुटि है? AJAX अनुरोध सामान्य रूप से जेएस कंसोल में दिखाई नहीं देता है। http://www.alfajango.com/blog/rails-js-erb-remote-response-not-executing/

जे एस कंसोल में

+0

हाहा आपका अधिकार है, यह क्रोम इंस्पेक्टर के नेटवर्क टैब में दिखाया गया है (एक्सएचआर के तहत, जैसा कि मैंने उल्लेख किया है)। जावास्क्रिप्ट कंसोल खाली रहता है। हालांकि यह एक महान पोस्ट है, मैं इसे देख लूंगा और देख सकता हूं कि क्या यह हल करता है! धन्यवाद ~ –

+0

इस लेख में यह जांचने के लिए कहा जाता है कि इसे "जेएस के रूप में" संसाधित किया जा रहा है - मेरे लिए, यह कहता है कि इसे जेएस के रूप में संसाधित किया जा रहा है। तो मैंने आपके द्वारा प्रदान किए गए वैकल्पिक लिंक पर क्लिक किया और उसने मुझे 404 त्रुटि दी। –

+0

हां मुझे यह भी एहसास हुआ :(लेकिन लेख के नीचे फायरबग में त्रुटियों के लिए प्रस्तुत जेएस का परीक्षण करने का एक तरीका प्रदान करता है। जो आपको आगे बढ़ने में कुछ अंतर्दृष्टि प्रदान कर सकता है। –

संबंधित मुद्दे