6

कहा जाता है, मैं रायन बेट्स नेस्टेड_फॉर्म मणि का उपयोग गतिशील रूप से किसी नेस्टेड फ़ील्ड को किसी रूप में जोड़ने के लिए कर रहा हूं।गतिशील नेस्टेड फॉर्म link_to_add को दो बार

उदा।

<%= f.fields_for :phones do |phone_form| %> 
<%= phone_form.text_field :phone_number %> 
<% end %> 
<%= f.link_to_add "Add a phone", :phones %></p> 

सबकुछ काम करता है, प्रत्येक बार लिंक क्लिक होने पर दो खाली फ़ील्ड जोड़े जाते हैं।

मैं $('form a.add_nested_fields').live('click', function() पर एक ब्रेकपाइंट रखा जाता है और पर एक मैक मैं क्रोम का उपयोग कर रहा देखें कि यह दो बार कहा जाता है ...

अपने शीर्षक में

+0

आप html जो उत्पन्न होती है और कृपया – Evan

+0

किसी भी सुराग अब तक जावास्क्रिप्ट का अधिक है दिखा सकता है? – ZMorek

उत्तर

9

देखो। आप देखेंगे कि इस दो बार वहाँ में है:

<script src="/assets/nested_form.js?body=1" type="text/javascript"></script> 

बस दूसरे संदर्भ (अपने application.html.erb में शायद) को हटा कर उसे काम करेंगे।

+0

आगे विस्तार करने के लिए, यह शायद आपके लेआउट में इस पंक्ति के कारण होता है: <% = javascript_include_tag "application", "nested_forms.js"%> विशिष्ट nested_forms.js संदर्भ को हटाएं क्योंकि यह पहले से ही एप्लिकेशन संदर्भ द्वारा शामिल किया जाएगा। –

+0

ठीक है और क्या होगा यदि मुझे कोई खाली आइटम नहीं चाहिए, तो मुझे उपयोगकर्ता को जोड़ने के लिए बस उन्हें जोड़ना होगा .. = (मैं यह समझ नहीं सकता कि कैसे। –

1

आप प्रपत्र जे एस फ़ाइलें दो बार लोड किए जा रहे

-1

लोड हो रहा है js एक से अधिक फ़ाइलों के लिए जाँच करें और यदि आप गुणा परियोजनाओं

1

समस्या आ रही उन लोगों के लिए में काम का उपयोग कर आप ब्राउज़र का कैश साफ़ करना न भूलें नेस्ट हो सकता है रेल 4/टर्बोलिंक्स और nested_form.js को दो बार नहीं मिला, application.js से टर्बोलिंक को हटाने का प्रयास करें। एक बार मैंने ऐसा किया और सर्वर को बाउंस कर दिया तो यह समस्या हल हो गई। यहाँ

क्रेडिट: https://github.com/ryanb/nested_form/issues/307

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