मैं उपयोगकर्ता को एक त्रुटि संदेश प्रदर्शित करने की कोशिश कर रहा हूं जिसमें कहा गया है कि कुछ गलत होने पर बुकिंग रद्द नहीं की जा सकती।
सफलता पर अजाक्स सामान्य रूप को स्वीकार करता हैदूरस्थ के साथ व्यवहार: सच्चा और एक आंशिक (संयोग से एक मौजूदा आंशिक के भीतर) का प्रतिपादन करता है, लेकिन मैं अपने js.erb फ़ाइल में अपने फॉर्म में "ajax: error" घटना को "बाइंड" नहीं कर सकता।
मैंने बहुत सारी और बहुत सारी चीजों की कोशिश की औरइसे काम करने के लिए प्रयास करने के लिए सिंटैक्स विविधताएँ। (मैं जावास्क्रिप्ट / jQuery के लिए काफी नया हूँ, इसलिए यह कुछ बुनियादी हो सकता है क्योंकि js.erb doesn "कंसोल में त्रुटियों को नहीं दिखाता है") यह मेरा नवीनतम प्रयास था:
cancel_success.js.erb:
$("#cancel-message").html("<%= j (render "cancel_success") %>");
$("#cancel-message").slideDown(350);
$("#search-show-container").hide()
$("#reservationId").closest("form").on("ajax:error", function(xhr, status, error) {
$("#cancel_error_text").html("Sorry, we can"t cancel your booking at the moment, please try calling the restaurant:");
});
मेरा फ़ॉर्म दृश्य:
<p id="cancel_error_text"></p>
<div id="search-show-container">
<%= form_tag(cancel_success_searches_path, remote: true) do %>
<%#= label_tag "Reservation ID" %>
<%= text_field_tag :reservationId %>
<%= submit_tag "Cancel Booking", name: nil %>
<% end %>
</div>
उत्तर:
जवाब के लिए 0 № 1ठीक है, यह पूरा नहीं हो सकता है badass
जवाब आप "के लिए देख रहे हैं। लेकिन मैं कोशिश करना चाहता था और आप शुरू कर दिया।
मुझे लगता है कि आपको स्विच करने की आवश्यकता है जहां आप अपना डालते हैं ajax:success
तथा ajax:error
कोड। अभी आप "इसे अपने में मिला है cancel_success.js.erb
फ़ाइल, जो आपके नियंत्रक क्रिया के बाद चलती है। मुझे लगता है कि आपको उस कोड को निम्नलिखित फ़ाइल डालने की आवश्यकता है: app/assets/javascripts/cancel_success.js
$(document).ready(function() {
$("#reservationId").closest("form").on("ajax:error", function(xhr, status, error) {
$("#cancel_error_text").html("Sorry, we can"t cancel your booking at the moment, please try calling the restaurant:");
});
});
अधिक जानकारी यहाँ