[英]How to utilize the ResponseText
前言 :原諒我,因為在處理JSON方面我還很陌生。
我目前正在將Rails與jQuery結合使用,以通過JSON檢索一些數據。 我能夠從控制器成功獲取數據,但似乎無法執行任何操作。
<a href="#" id="click">Click Me</a>
$( "#click" ).on( "click", function(e) {
e.preventDefault();
$.ajax({
type: "GET",
dataType: "json",
url: "/clothing/get_color",
success: function(response){
alert(response);
}
})
});
def get_color
#Query goes here
respond_to do |format|
format.html
format.json { render :json => @color, status: :ok }
end
end
當我單擊$("#click")
鏈接,查看我的Firebug控制台時,它成功地成功查詢了控制器,沒有任何錯誤,並將response
顯示為blue
。
但是,我不能對此響應執行任何操作,例如alert(response)
或$("#my_input").val(response)
。
對我在這里做錯的任何想法嗎?
您可能需要對響應進行JSON.stringify()才能嘗試將其輸出。
檢查此鏈接https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
好吧,我知道了。 事實證明,即使在響應狀態為200
,它也在JSON請求之后觸發了“錯誤”,而不是成功。
因此,我在這里找到了這篇SO帖子,解釋了添加:success=> "success"
。 因此,我將控制器代碼更改為:
respond_to do |format|
format.json { render :json => { :success => "success", :status_code => "200", :color => @color } }
end
那行得通!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.