![](/img/trans.png)
[英]SyntaxError: Unexpected token < in JSON at position 0” error in AJAX
[英]Rails ajax error - SyntaxError: Unexpected token C in JSON at position 0
在我的視圖文件中,我有以下jQuery AJAX調用
<% if flash[:notice] %>
<div class="notice"><%= flash[:notice] %></div>
<% end %>
.
.
.
function updateFunction() {
var input = JSON.stringify({data: hot.getData()});
$.ajax({
type: 'POST',
url: "/cars/create",
data: input,
contentType: "application/json; charset=utf-8",
dataType: 'json',
success: create_data_succ,
error: create_data_error
});
}
function create_data_error(XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
在cars_controller.rb
我有
def create
Car.create(name: params[:data][:name])
flash.now[:notice] = 'New Car!'
render "new"
end
數據正在保存到db,但我在屏幕上看不到通知消息,而是收到警報消息(錯誤回調jQuery AJAX)
SyntaxError:JSON中位置0處的意外令牌C
我究竟做錯了什么? 任何幫助,不勝感激
由於數據已保存到數據庫,因此數據已正確發送到控制器; 錯誤在於響應。 您正在成功創建一個render 'new'
,該render 'new'
將HTML發送回作為對AJAX調用的響應。 也許像:
car = Car.new(name: params[:data][:name])
unless car.save
render json: { errors: error }
end
...
如果您需要HTML和JSON響應(無論何種原因),您可以通過做到這一點respond_to
respond_to do |format|
format.html { render :new }
format.json { render json: { ... } }
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.