我在rails中使用rjs模板實現了destroy功能。當從數據庫中銷燬一條記錄時,出現「XML分析錯誤:找不到元素」錯誤。這是我的編碼嗎?XML解析錯誤:在rails中使用rjs時找不到元素
我用下面的版本Ruby和Rails: 的Ruby版本:1.8.7 Rails的版本:2.3.8
Controller file:
def destroy
begin
@task = Task.find(params[:id])
@task.destroy
respond_to do |format|
#format.html { redirect_to(tasks_url) }
format.js
format.xml { head :ok }
end
rescue Exception => e
puts e
end
end
局部模板文件_task.html.erb:
<tr id="<%= dom_id(task) %>">
<td><%= task.name %></td>
<td><%= task.note %></td>
<td><%= task.priority %></td>
<td><%= link_to 'Show', task %></td>
<td><%= link_to 'Edit', edit_task_path(task) %></td>
<td>
<%= link_to 'Destroy', task, :confirm => 'Are you sure?', :method =>:delete,:remote => :true %>
index.rhtml裏的文件:
<div id='newform'>
<% form_for([@task, Task.new]) do |f| %>
<div>
<%= f.label 'Add a new task: ' %>
<%= f.text_field :name %>
</div>
<div>
<%= f.submit %>
</div>
<% end %>
</div>
<table id="alltasks">
<tr id="tablehead">
<th>Name</th>
<th>Note</th>
<th>Priority</th>
<th></th>
<th></th>
<th></th>
</tr>
<%= render @tasks %>
<!-- expanded: render :partial => "task", :collection => @tasks -->
</table>
<br />
<%= link_to 'New Task', new_task_path %>
destroy.js.rjs文件:
page.alert('Hi')