嘿傢伙我需要知道一些問題的答案。 第一個當我不從控制器返回任何東西時,我該如何處理ajax調用,因爲它總是要求我調用被調用的函數的視圖,但是因爲我已經使用ajax調用了該函數,它怎麼能有一個視圖。我用它在ROR(Ruby on Rails的))ajax控制在軌道上
bookmark.html.erb
<div class="row">
<div id="page-wrapper-lbms" class="small-12 medium-12 large-12 columns dashboard-page">
<input type="hidden" id="bookmarked_against_req_id" value=<%= @data2%> />
<%
if @requests != nil
@requests.each.with_index do |request,index|
if request != nil
%>
<header>
<div style="text-align:center">
<a href="#" onclick="ajax_bookmark('<%= request.id %>' , '<%[email protected]_id%>')" ><span class="fa fa-bookmark"></span></a>
</div>
<h2 style="text-align:center"><%= request.title %></h2>
<div style="text-align:center">
<h6 style="color:#aaaaaa"><strong><%= request.is_service%></strong></h6>
</div>
</header>
<div class ="row">
<div class="small-12 medium-12 large-8 columns">
<div id="request-content-lbms" class="panel">
<p>
<%= request.description%>
</p>
</div>
<div id="list-request-cat-lbms">
<span class="fa fa-tag"></span>
<% if @tag[index] != nil
@tag[index].each do |cat| %>
<%= cat.title %>
<%end%>
<%end%>
</div>
</div>
<aside class="small-12 medium-12 large-4 columns" style="padding-left:10%">
<h3 ><strong>Syed Muhammad Ali Gardezi</strong></h3>
<time><%= request.created_at %></time><br />
<%end%>
<button class="button tiny">Schedule Meeting</button>
</aside>
</div>
</div>
<%end%>
<%end%>
<script>
function ajax_bookmark(abc , cde){
var cde = $('#bookmarked_against_req_id').val();
$.ajax({
type: "GET",
url: 'bookmark_request',
data: {
d:abc,
d1:cde
},
error:function(){
},
dataType: 'json',
//beforeSend:function(){},
//complete:function(o,s){},
success:function(data){
location.href ="/requests/bookmark"
},
type: 'get'
});
}
</script
bookmark_request
def bookmark_request()
data = params[:d]
data1 = params[:d1]
data2 = data1#["$oid"]#.split('"' , 6)
#asd
request_bookmarked = Request.getRequest(data)
bookmarked_against_Request = Request.getRequest(data2)
request_bookmarked_2 = request_bookmarked
bookmarked_against_Request_2 = bookmarked_against_Request
#asd
if bookmarked_against_Request_2[:favourites]
bookmarked_against_Request_2[:favourites] << request_bookmarked[:id]
else
bookmarked_against_Request_2[:favourites] = Array.new
bookmarked_against_Request[:favourites] = Array.new
bookmarked_against_Request_2[:favourites] << request_bookmarked[:id]
end
if request_bookmarked_2[:favourites_of]
request_bookmarked_2[:favourites_of] << bookmarked_against_Request[:id]
else
request_bookmarked_2[:favourites_of] = Array.new
request_bookmarked[:favourites_of] = Array.new
request_bookmarked_2[:favourites_of] << bookmarked_against_Request[:id]
end
request_bookmarked.update(Hash['favourites' ,request_bookmarked_2[:favourites]])
bookmarked_against_Request.update(Hash['favourites' ,bookmarked_against_Request_2[:favourites]])
#asd
bookmarks = Bookmark.where(request_id: bookmarked_against_Request[:id]).first()
#asd
b = bookmarks
if bookmarks != nil
#bookmarks.each { |bookmark| bookmark.update_attributes(corsponding_requests: request_bookmarked[:id]) }
b[:corsponding_requests] << request_bookmarked[:id]
b.update(Hash['corsponding_requests' , b[:corsponding_requests]])
else
bookmark = Hash.new
bookmark["owner_req"] = session[:user]
bookmark["request_id"] = bookmarked_against_Request[:id]
bookmark["corsponding_requests"] = Array.new
bookmark["corsponding_requests"] << request_bookmarked[:_id]
Bookmark.createBookmark(bookmark)
end
flash[:notice] = "Request has been bookmarked successfully."
end
現在,當過我運行這個功能,我需要它去到成功ajax的功能bookmark.html.erb但問題是它說我找不到視圖。什麼是我在這裏做錯了
第二當我需要返回的東西我已閱讀,我需要做一個HTML助手,但我不知道什麼是一個HTML助手是。我怎麼能返回一個字符串返回到AJAX功能
任何幫助將不勝感激(我是新來的AJAX)
將這個format.html帶我到ajax的成功功能。因爲我需要在那裏做點什麼 並在第二個像我需要返回一個字符串或一個對象,如 「偉大」或對象說的書籍 – Gardezi
我添加了一個關於如何使用ajax響應的例子。如果我理解正確,我認爲這也是你在第二部分想要的。 – davidwessman
事情是我需要返回值首先返回在ajax成功函數 第二件事是當我沒有返回任何東西開始給我的錯誤,應用程序找不到視圖。我只需要在這種情況下返回到ajax成功函數 – Gardezi