2014-03-28 110 views
0

這應該很簡單,但我不明白表單而不更改模型條目。使用表單向rails應用程序發送ajax請求

我想這樣做:

有一個文本輸入框(或下拉菜單),用戶可以在其中設置他想要一個表格限制

行數目前我顯示所有具有循環的行,但如果某人在該框中鍵入「3」並點擊該按鈕,則呈現表_table.html.erb的部分應該重新加載,限制爲三。

我該如何設置?

+0

此表單是否爲遠程?此外,表中顯示的是部分內容? –

回答

0

你可以做這樣的事情:

在你的JavaScript文件:

$('#my_button').click(function(){ 
    $.ajax({ 
    type:'GET', 
    url: '/table', 
    data:{ rows: $('#my_text_field').val() }, 
    success: function(data){ 
     $('#my_table_container').html(data); 
    } 
    }); 
}); 

在你的控制器:

def table 
    render partial: 'table', locals: { rows: params[:rows] } 
end 

在你的routes.rb:

match 'table' => 'your_controller#table' 

然後在你的parti al(_partial.html.rb),您必須迭代您在行參數中收到的行數。

+0

你可以在params.merge中構建嗎?我有其他參數管理排序等,並希望他們保持他們的方式 – Killerpixler

+0

如果您需要從視圖中更多的參數,只需將它們添加到「數據ajax屬性」像數據:{行:val1,排序:val2 }' – VAIRIX

相關問題