我是Rails的新手,无法找到对我有帮助的资源。
基本上,我有一个视图,该视图具有收集一些数据的表单,在单击提交时,我希望控制器处理数据(获取更多信息)并呈现1行表。
这是我的表单(视图)
<form action="track/do_track" name="track" id="track-form" class="ajax" method="post">
<div class="table-bar">
<input type="button" value="Submit" name="Submit" class="uiButton unitExt" id="confirm_submit_button" onclick="submit()"/>
<div class="fclear"></div>
</div>
<div id="table" class="table">
<div class="line thead">
<div class="unit th" style="width:160px"><span class="scan-icon-white">ID</span></div>
<div class="unit th" style="width:175px">
A/B
</div>
</div>
<div class ="line tr" >
<%= content_tag :div, :class=>"unit td" do %>
<%= text_field_tag("shipment_id","",:id=>"id", :class=>"shipment-text padding5", :autofocus => true)%>
<% end %>
<%= content_tag :div, :class=>"unit td" do %>
<select class="mh-ph fk-select-box" name="a-b" id="mf-ph">
<option id="a" value="A">MotherHub</option>
<option id="b" value="B">PickupHub</option>
</select>
<% end %>
</div>
</div>
</div>
</form>
在routes.rb中
match "/track/track_page" => "track#track_page"
match "/track/do_track" => "track#do_track"
点击提交后,我正在do_track
中调用track_controller
def do_track
# some processing
# render a table in the same view
end
def track_page
render
end
如何在同一页面上仅渲染一个新表?
答案 0 :(得分:1)
您将需要一些Java脚本(除非您想再次重新渲染整个页面)。
我建议您查看Working with Javascript in Rails文档中的一些有用示例。
Server Side Concerns部分是您所需案例中最基本,最简单的方法。