我试图为每个食谱制作相似的按钮
但如果我点击按钮浏览器说
xhr.send((options.hasContent&& options.data)|| null);
返回此错误
我不知道为什么会发生这个错误
这是我在rails中的代码
application.js
function like(id){
$.ajax({
url:"/like/" + id,
type:"POST",
dataType:"json",
success: function(data){
if(data.result){
$("#countlike").html("likes " + data.count);
// $("#count").removeAttr('onclick');
// $("#count").attr('disabled', 'disabled');
}
}
});
}
route.rb
post '/like/:id'=>'recipes#like'
views/recipes/show.html.erb
<p>
<a id = "countlike" onclick="like(<%=@recipe.id%>)">Like it</a>
</p>
recipes_controller.rb
def like
likes = Recipe.find(params[:id]).likes
result = likes.create
render json:{result: result, count: likes.count}
end
它在其他项目相同的代码中正常工作
答案 0 :(得分:2)
在发布可能导致错误的ajax请求时,您似乎错过了数据属性。
function like(id){
$.ajax({
url:"/like/" + id,
type:"POST",
dataType:"json",
data: my_data, // <--- HERE
success: function(data){
if(data.result){
$("#countlike").html("likes " + data.count);
// $("#count").removeAttr('onclick');
// $("#count").attr('disabled', 'disabled');
}
}
});
}
希望它有所帮助。干杯!