تركيب LINK_TO مع القضبان 3 (link_to_remote) وجافا سكريبت الأساسي لا يعمل في القضبان 3 التطبيق؟

StackOverflow https://stackoverflow.com/questions/2458841

سؤال

وأنا أتساءل إذا ما تم كسر تماما بناء الجملة LINK_TO الأساسي في الماجستير rails3 الحالي أو إذا وأنا أفعل بعض تركيب خطأ هنا.

= link_to "name", nil, :onlick => "alert('Hello world!');"

ويجب أن تنتج في الواقع تنبيه على نقرة. بسيط جدا. لا يعمل على مشروع rails3 بلدي! (أيضا أي إخراج الخطأ!) أي أفكار؟

ولبناء الجملة LINK_TO العام لم أجد مثالا حيث يمكن الجمع بين link_to_remote مع تأكيد والنائية وأتش تي أم أل الدرجة (انظر محاولة بلدي أدناه)

= link_to "delete", {:action => "destroy", :remote => true, :method => :delete, :confirm => "#{a.title} wirklich Löschen?" }, :class => "trash"

وحتى المعهد rails3 لا يساعدني هنا: HTTP: //rails3api.s3.amazonaws كوم / index.html و

ومساعدة!

هل كانت مفيدة؟

المحلول 2

وطيب ويبدو ان التغييرات جافا سكريبت غير مزعجة الجديدة التي أدخلت المشكلة. انظر آخر التالية لمزيد من المعلومات إذا واجهت قضايا مماثلة HTTP: //blog.loopedstrange.

كوم / متواضع rubyist-أرشيف / 3-ujs و-CSRF-الفوقية علامات القضبان،
 <%= csrf_meta_tag %>

والثابتة الأمور بالنسبة لي.

نصائح أخرى

وأعتقد أن مشكلتك هنا هي أن قمت بتعيين صلة لاظهار التنبيه عند يمسح عليه، بدلا من عندما يتم النقر عليه. ؛)

وأما بالنسبة link_to_remote، قد تغير مع التحول إلى جافا سكريبت غير مزعجة. يمكنك أن تقرأ عنها هنا: HTTP : //blog.solnic.eu/2009/09/08/unobtrusive-javascript-helpers-in-rails-3.html

وشيء لا عمل:

= link_to "name", nil, :onclick => "alert('Hello world!');"
=> <a href="/currentpath", onclick="alert('Hello world!');">name</a>

ويجب عليك استخدام:

= link_to "name", "#", :onclick => "alert('Hello world!');"
=> <a href="#", onclick="alert('Hello world!');">name</a>

وإذا كان أي من الإجابات الأخرى هنا العمل بالنسبة لك، ثم ربما هذه الإرادة مساعدة.

وهكذا كان إعلان csrf_meta_tag لا يكفي بالنسبة لي، على الرغم من وينبغي أن يضاف في ملف التخطيط للحصول على القضبان 3 على أي حال. معي اتضح أن يكون الصراع مع مسج. أنا فقط وضعت هذا:

<script type="text/javascript">
  jQuery.noConflict();
</script>
تم حل

وبعد علامة القضبان البرامج النصية في تخطيط بلدي والصدام بين النموذج ومسج. يا المعزوفة كنت الحصول على مربع الحوار تأكيد على الحذف.

وأيضا حل هذه التقنية بلدي المشكلة الأصلية عند استخدام LINK_TO في محاولة لحذف سجل. مع LINK_TO أي أمر تدمير يبدو أن إعادة توجيه إلى صفحة عرض للسجل. ومن ثم انتقلت إلى button_to استنادا إلى بعض الآخر رأى الحل الأول، ولكن مع عدم وجود تأكيد. وأتساءل عما إذا كانت هناك بعض القضايا يجلس أكثر عمقا مع مسج والنموذج.

وهذا يحدث فقط على القضبان 2.3.5 التطبيقات التي تمت ترقيتها التي يبدو أن العمل بخير دون الحاجة لتشمل نموذج أو: الافتراضية في ملف تخطيط بلدي.

وعلى الجانب علما أنني لم اتبع التعليمات التالية:

HTTP: // WEBTECH. union.rpi.edu/blog/2010/02/21/jquery-and-rails-3/

وفي محاولة لتفقد نموذج جميعا لهذا المشروع واستخدام بوابة حدة ثانويه مسج عن القضبان 3 بدلا من ذلك. وبعد فإن هذه الإرشادات لا تعمل، وكنت لا تزال دون الحوارات تأكيد مع button_to والصفحة تظهر عند استخدام LINK_TO. بس كنت أذكر أنه حتى إنقاذ شخص عناء محاولة هذا.

وهناك تعليق خارج الموضوع عن إجابة فوق لأنني لا أستطيع التعليق بعد: (

وrobeastham: كنت احسب أن ترك بعض التعليقات التي قد تساعد مع بعض القضايا التي قد encoutered.

ولقد كان لديها "تدمير رابط إعادة توجيه إلى صفحة عرض بدلا من الصفحة مؤشر" المسألة أيضا منذ التحول من أكتيفيريكورد إلى Mongoid، ولا يمكن العثور على حل حقيقي (بالفعل إزالة النموذج). ومع ذلك، فإن الحل الذي يعمل نظيفة هو لتحديد explicitely طريق إعادة مباشرة باستخدام: موقع لrespond_with:

respond_with @themodel, :location => themodels_url

وأما عن الحصول على تأكيد المنبثقة مع زر واحدة، يمكن أن تفعله:

button_to "Button Name", { :controller => "your/controller", :action => :action_name, :confirm => "Text for the pop-up"}, { :method => :<method name> }

ومنها مثلا.

button_to "Click Here", { :controller => "home", :action -> :set_completed, :confirm => "Mark the item complete?" }, { :method => :put }

وهذا عمل بالنسبة لي:

و<%= link_to "Recommend", recommend_user_path(@user), :remote => true %>

وتأكد من أن هذا هو في وجهات النظر الخاصة بك \ تخطيط \ application.html.erb (أو ما يعادلها):

و<%= csrf_meta_tags %>

ملحوظة أن القضبان الاستخدامات v3.2.2 "العلامات" وليس "سمة"

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top