是否可以使用 jQuery 将数据库表中的最后一条记录添加到 html 表的最后一行?
像这样的东西:
$(".save-expense .btn").click ->
$('#expense_table').append( Expenses.last )
并指明使用哪些字段。
谢谢!
是否可以使用 jQuery 将数据库表中的最后一条记录添加到 html 表的最后一行?
像这样的东西:
$(".save-expense .btn").click ->
$('#expense_table').append( Expenses.last )
并指明使用哪些字段。
谢谢!
首先是好消息:是的,有可能:)
您想要的是向您的服务器发送一个 ajax 请求,该请求返回最后的费用信息。所以你的javascript应该看起来像这样。
应用程序.js$(".save-expense .btn").live('click', function(){
$.ajax({
type: 'GET',
url: '/your_controller/last_expense/', # make sure this url is correct
data: '', # you can also send data if you want
dataType: "script"
});
};
你的控制器需要知道如何响应这个请求,所以:
your_controller.rbdef last_expense
# if you send data you can access it via params hash
# e.g. params[:my_data]
@last_expense = Expense.last
respond_to do |format|
format.js render 'last_record.js.erb'
end
end
模板看起来像:
_last_record.js.erb$('#expense_table').append( <%= j(content) %>)
# or with a partial
$('#expense_table').append( <%= j(render partial: 'expense'), locals: @last_expense %>)
PS我不确定“并指出要使用的字段”是什么意思。我有点赶时间,所以不要相信语法(尤其是 javascript ;))
希望这可以帮助!如果您需要更多帮助,明天将再次检查。