用Javascript提交表单会导致html响应,而不是AJAX响应
Rails 3 Submitting a form with Javascript causes html response instead of a AJAX response
当我用Javascript提交表单时,我得到html响应,就像它忽略了远程true参数一样。如果我提交带有提交按钮的表单,它会执行AJAX并更新所请求的页面元素。因此,代码中唯一的区别是onchange
参数和按钮的存在。下面是我的表单代码:
<% form_tag('switch_car', :method => :put, :name => "switch_car", :remote => true) do %>
<div class="field">
<label>Car Name:</label>
<%= select_tag(:id, options_from_collection_for_select(active_cars, "id", "name"), :onchange => "submitForm('switch_car')", :include_blank => true)%>
</div>
<% end %>
这是我的Javascript函数:只是一个简单的提交。
<script type="text/javascript" charset="UTF-8">
function submitForm(formname){
document.switch_car.submit();
}
</script>
下面是生成的HTML:
<form accept-charset="UTF-8" action="switch_car" data-remote="true" method="post" name="switch_car"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓" /><input name="_method" type="hidden" value="put" /><input name="authenticity_token" type="hidden" value="PEbdqAoiik37lcoP4+v+dakpYxdpMkSm7Ub8eZpdF9I=" /></div><div class="field">
<label>Car Name:</label>
<select id="id" name="id" onchange="submitForm('switch_car')"><option value=""></option><option value="9">Truck</option>
<option value="10">Car</option></select>
</div>
有人知道为什么Javascript提交导致不同的结果,而不是在同一表单上的按钮?如果是这样,我可以让Javascript提交与Ajax结果一起工作吗?
找到问题。我认为提交表单与javascript将提交表单与相同的远程=> true选项,但它似乎绕过了这一点。我不得不使用新的AjaxRequest来提交它的工作。
相关文章:
- 如何从php返回php变量值以及html响应ajax
- PHP:响应 AJAX 发布请求
- 从 php 响应 AJAX 的更好方法
- 如何将响应 ajax 发送到 html
- 处理服务器响应AJAX
- Twitter Bootstrap Rails按钮下拉列表没有响应AJAX
- 状态200 OK,相同的域,有效的JSON数据,没有响应(Ajax)
- 多个JSON数组作为响应-AJAX&PHP
- 稍后再响应AJAX请求
- Jquery的JSON响应.ajax四舍五入较大的数字,所以我不能得到正确的值
- 如何响应AJAX调用没有erb.js /为什么使用erb.js
- 是否有可能得到php echo/响应Ajax而不通过Ajax张贴
- 如何发送响应ajax到变量javascript
- Servlet不响应ajax请求
- 为什么嵌入的JavaScript在响应ajax调用时不执行?
- 多响应AJAX请求
- JAVASCRIPT:在本地主机上成功响应Ajax后重定向到主页
- Spring响应ajax: 403错误
- JSON响应AJAX格式错误
- 我如何发送压缩(gzip) JSON作为响应Ajax请求,从Java