Javascript 如何使js成为通过ajax提交的rails表单的格式?
我有以下表格:Javascript 如何使js成为通过ajax提交的rails表单的格式?,javascript,jquery,ruby-on-rails,forms,Javascript,Jquery,Ruby On Rails,Forms,我有以下表格: <div id='relationship_<%= relationship.id %>'> <% @value_id = "value_#{relationship.id}" %> <% @div_slider_id = "slider_value_#{relationship.id}" %> <% @form = "edit_relationship_#{relationship.id}"%> <
<div id='relationship_<%= relationship.id %>'>
<% @value_id = "value_#{relationship.id}" %>
<% @div_slider_id = "slider_value_#{relationship.id}" %>
<% @form = "edit_relationship_#{relationship.id}"%>
<%= form_for(relationship, :remote => true) do |f| %>
<div id="<%= @div_slider_id %>"></div>
<%= f.hidden_field :value, :id => "#{@value_id}" %>
<% end %>
</div>
<script type='text/javascript'>
$(document).ready( function() {
$(function() {
$( "#<%= @div_slider_id %>" ).slider({
orientation: "horizontal",
range: "min",
value: <%= relationship.value || 1 %>,
min: 0,
max: 100,
change: function( event, ui ) {
$( "#<%= @value_id %>" ).val( ui.value );
正确)do | f |%>
“#{@value_id}”%>
$(文档).ready(函数(){
$(函数(){
$(“#”)滑块({
方向:“水平”,
射程:“分钟”,
值:,
分:0,,
最高:100,
更改:功能(事件、用户界面){
$(“#”)val(ui.value);
如果用户移动滑块,表单将作为HTML而不是JS发送
$("#<%= @form %>").submit();
}
});
$( "#<%= @value_id %>" ).val( $( "#<%= @div_slider_id %>" ).slider( "value" ) );
});
});
</script>
$(“#”)提交();
}
});
$(“#”)val($(“#”)滑块(“值”);
});
});
当我移动滑块时,如何以JS格式发送该表单
谢谢将ID添加到表单提交:
<%= f.submit 'Ready', :id => "button_submit" %>
或:尝试向表单声明中添加数据类型:
<%= form_for(relationship, :remote => true, :html => { "data-type" => :js } ) do |f| %>
true,:html=>{“数据类型”=>:js})do | f |%>
$("#<%= @form %>").submit();
我不明白。你不能发送JS格式,但你可以发送JS格式。我为clarityHi编辑了我的问题,我也有同样的问题,我发布了两个关于这个问题的问题。它将以html格式发送。我解决了这个问题,并在同一篇文章中写下了解决方案。看看这是否能帮你找到答案,不过我真的想去掉这个按钮。我将编辑问题以使自己更清楚。编辑我的答案,尝试数据类型方法。我最终使用了您的
$(“#buttom_submit”)。单击()代码>方法,并对按钮应用显示:无
css属性。谢谢
<%= form_for(relationship, :remote => true, :html => { "data-type" => :js } ) do |f| %>
$("#<%= @form %>").submit();
$js.post("/relationship.js", $js("#relationship_form").serialize());