[英]Rails - Execute ajax call without form and link_to, pure jQuery
我有一些div,当用户悬停这个div时,我想执行一些ajax调用,触发一些操作并写入数据库,有人徘徊该div。
没有表单和link_to,纯jQuery。
我需要最简单的例子:)
我建议为日志创建一个名为HoverLogger的新模型和控制器(或者你喜欢的任何一个)。 这样,通过调用HoverLogger控制器的create action,可以将逻辑分离并成为RESTful。
假设所需的div具有class .hoverable :
$(".hoverable").hover(
function () {
// send ajax when mouse enters hoverable object
$.ajax({
type: "POST",
url: "/hover_logger",
data: {logged: true}, // pass any additional parameters if you need
success: function(msg) {
console.log(msg); // do something on success e.g. console log the message
}
});
},
function () {
// do something when mouse leaves hoverable object
}
);
在创建操作中记录事件:
def create
HoverLogger.create!(user_id: current_user.id)
respond_to do |format|
format.js { render :nothing => true }
end
end
HoverLogger将跟踪user_id和时间戳。 还为HoverLogger create方法创建路由。
基于所选解决方案的工作代码
$(".hoverable").hover(function(){
console.log("hovered");
$.ajax({
type: "POST",
url: "/vastrodex",
data: {vastroman: $(this).attr('id'), vastrodexCount: 1}, // pass any additional parameters if you need
success: function(msg) {
console.log(msg); // do something on success e.g. console log the message
}
});
},function(){
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.