當我調用$ .getJSON時,我想重新加載tbody元素。換句話說,我需要刪除所有元素,並通過Json響應放置新元素。在Rails中使用帶有Json響應的AJAX重新加載部分視圖
JS
$(document).ready(function(){
$('#position').sortable({
update: function(event, ui) {
var newOrder = $(this).sortable('toArray').toString();
$.getJSON('/save_positions.json', {ids:newOrder}, function(data){
??????
});
}
});
});
我查看
# index.html.erb
<tbody id="position">
<%= render :partial => "activities"%>
</tbody>
管窺
#_activities.html.erb
<% @activities.each do |activity| %>
<tr id='<%= activity.id %>'>
<td><%= activity.position %></td>
<td><%= link_to activity.id, activity_path(activity) %></td>
<td><%= activity.name %></td>
<td><%= activity.estimated %></td>
<td><%= activity.used %></td>
<td><%=l activity.created_at %></td>
</tr>
我的動作(應用控制器)
def save_positions
@activities = Activity.all(:order => 'position')
respond_to do |format|
format.json { render :json => @activities }
end
end
你要在服務器上生成新的HTML,返回,並將其插入到文檔中,還是要回到JSON和工藝,在JavaScript來生成新的HTML? – JMM 2012-08-04 14:39:06
無論..我只想重新加載表沒有重新加載頁面 – Predoff 2012-08-04 15:01:15