Tôi đã đọc các bài đăng ở đây, trang web Bootstrap và được cho là như điên - nhưng không thể tìm thấy những gì tôi chắc chắn là một câu trả lời dễ dàng ...
Tôi có một phương thức Bootstrap mà tôi mở từ một người trợ giúp link_to như thế này:
<%= link_to "New Contact", new_contact_path, {remote: true, 'data-toggle' => 'modal', 'data-target' => "#myModal", class: "btn btn-primary"} %>
Trong ContactsController.create
hành động của tôi , tôi có mã tạo ra Contact
sau đó chuyển sang create.js.erb
. Trong create.js.erb
, tôi có một số mã xử lý lỗi (hỗn hợp ruby và javascript). Nếu mọi thứ suôn sẻ, tôi muốn đóng phương thức.
Đây là nơi tôi gặp khó khăn. Tôi dường như không thể loại bỏ phương thức khi mọi việc suôn sẻ.
Tôi đã thử $('#myModal').modal('hide');
và điều này không có kết quả. Tôi cũng đã thử $('#myModal').hide();
làm cho phương thức loại bỏ nhưng rời khỏi bối cảnh.
Bất kỳ hướng dẫn về cách đóng chế độ và / hoặc loại bỏ phông nền từ bên trong create.js.erb
?
Biên tập
Đây là đánh dấu cho myModal:
<div class="modal hide" id="myModal" >
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Add Contact</h3>
<div id="errors_notification">
</div>
</div>
<div class="modal-body">
<%= form_for :contact, url: contacts_path, remote: true do |f| %>
<%= f.text_field :first_name, placeholder: "first name" %>
<%= f.text_field :last_name, placeholder: "last name" %>
<br>
<%= f.submit "Save", name: 'save', class: "btn btn-primary" %>
<a class="close btn" data-dismiss="modal">Cancel</a>
<% end %>
</div>
<div class="modal-footer">
</div>
</div>
myModal
. Tôi đã thử lại $('myModal').modal('hide')
và vẫn không tốt. HM. Về những gì tôi đang cố gắng thực hiện, tôi nghĩ rằng có thể không chính xác khi sử dụng trình trợ giúp link_to. Tôi đã thay thế điều này bằng: <a data-toggle="modal" href="#myModal" class="btn btn-primary">Add Contact</a>
vì tôi không thực sự cần một cuộc gọi đến new_contact_path
. Tôi chỉ muốn phương thức mở và sau đó xử lý đầu vào của người dùng. Cảm ơn đã dành thời gian trả lời. Tôi sẽ xem nếu tôi không thể sắp xếp cái này ra.
$('#myModal').modal('hide');
(có một #
thiếu sót trong bình luận của bạn).
$('#myModal').modal('hide')
. J
$('#myModal').modal('hide');
là cú pháp đúng để đóng / ẩn phương thức với idmyModal
(bạn có thể kiểm tra điều này trên trang tài liệu Bootstrap ). Bạn có chắc chắn bạn có một yếu tố với id này trên trang của bạn? Ngoài ra, bạn đang cố gắng thực hiện điều gì với cuộc gọi này? Việc triển khai hiện tại của bạn thực hiện một yêu cầu Ajax đếnnew_contact_path
và đồng thời mở phương thức với nội dung của#myModal
- đây có phải là điều bạn muốn không?