1

jQueryを使用してデータベーステーブルの最後のレコードをhtmlテーブルの最後の行に追加することは可能ですか?

このようなもの:

  $(".save-expense .btn").click ->
    $('#expense_table').append( Expenses.last )

また、使用するフィールドを示します。

ありがとう!

4

1 に答える 1

2

最初の良いニュース:はい、それは可能です:)

必要なのは、最後の経費情報を返すajaxリクエストをサーバーに送信することです。したがって、JavaScriptは次のようになります。

application.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.rb
def 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;))を信用しないでください

お役に立てれば!さらにサポートが必要な場合は、明日もう一度確認します。

于 2013-01-25T21:29:27.263 に答える