【发布时间】:2015-04-19 02:35:38
【问题描述】:
如何使用按钮在 Rails 中提交 AJAX 表单?
我的代码:
Controller:
def list
@events = ExternalEvent.all
if !params[:city_id].nil?
@events = @events.where(city_id: params[:city_id])
end
respond_to do |format|
format.js
format.html
end
end
list.js.erb:
$('#events').html("<%= j render 'events' %>");
list.erb:
<%= javascript_include_tag "jquery" %>
<%= javascript_include_tag "application" %>
<div id='events'>
<%= render 'events' %>
</div>
_events.erb:
<%= form_tag('/list', remote: true) do %>
<input name='city_id' value='2'>
<input type='Submit'>
<% end %>
<table>
<% for event in @events %>
<tr>
<td>
<%= event.name %>
</td>
</tr>
<% end %>
</table>
点击提交后,AJAX 表单提交成功。
但是我如何从表单外部提交表单。 使用
<input type='button' onclick="document.getElementById('get_event').onsubmit()" value="Change City">
返回一个 JavaScript 错误
Uncaught TypeError: object is not a function
onclick
如何在外部提交此表单?
【问题讨论】:
标签: javascript jquery ruby-on-rails ajax forms