当页面使用下面的jQuery代码加载时,我试图自动提交表单:
$(document).ready(function(){
$("#finds_expense").submit();
});
表单提交要求参数作为JS。当我手动提交表单时,它工作得很好,但是当我使用jQuery的(document).ready
时,参数以HTML的形式传递,而不是JS。我很感谢你在这方面的帮助。已经和这个问题纠缠了一段时间了。TQ。
下面是finds_expense
的代码
<div id="month-lookup">
<%= form_tag search_expense_path, remote: true, method: :get, id: "finds_expense" do %>
<div class="form-group row no-padding text-center col-md-8">
<div class="col-md-4">
<%= text_field_tag :month, params[:month],
placeholder: "month",
autofocus: true,
class: "form-control search-box input-lg" %>
</div>
<div class="col-md-4">
<%= text_field_tag :year, params[:year],
placeholder: "year",
autofocus: true,
class: "form-control search-box input-lg" %>
</div>
<div class="col-md-2">
<%= button_tag(type: :submit, class: "btn btn-lg btn-success", id: "submit_expense") do %>
<i class="fa fa-search"></i> Send
<% end %>
</div>
</div>
<%end%>
发布于 2018-09-24 08:15:15
如果在form对象中调用.submit()
方法,则remote: true
选项将无法工作。
一个选项是使用.trigger('submit')
触发表单。
另一个解决方案可能是这样的:
$(document).ready(function(){
var formData = $("#finds_expense").serialize();
$.ajax({
url: '...',
data: formData,
type: 'POST',
contentType: 'apploication/script'
});
});
https://stackoverflow.com/questions/52480136
复制