2016-03-08 46 views
0

我有一个模式内的窗体的问题。RAILS-4 jquery-ujs让我所有的按钮在form_tag中提交按钮

这里是我的形式

<%= form_tag({controller: "controller", action: "action"}, id: "form_id", remote: true) do %> 
    <button class="btn btn-default btn-xs btn-filter" id="id_button"> 
    <%= number_field_tag "id", nil, placeholder: "0", class: "input_class" %> 
    <%= submit_tag("ok", id: "submit_add", class: "btn btn-success") %> 
<% end %> 

的提交标签效果很好,但jQuery的UJS会将此事件:

function(event) { 
    var button = $(this); 

    if (!rails.allowAction(button)) return rails.stopEverything(event); 


    // register the pressed submit button 
    var name = button.attr('name'), 
    data = name ? { 
    name: name, 
    value: button.val() 
} : null; 

button.closest('form').data('ujs:submit-button', data); 
} 

#id_button标识的按钮,这将导致该按钮也提交形式,但我不想那样。

我对这个问题一无所知。

+0

的可能的复制[我可以做一个

回答

2

HTML中按钮的默认行为是提交表单。

如果您需要不同类型的操作,您需要在按钮标签内指定type="button"。这与jquery-ujs恐怕没有任何关系。

<button type="button" class="btn btn-default btn-xs btn-filter" id="id_button"> 
+0

它工作正常。谢谢 ;) –