2013-08-28 2 views
2

У меня есть форма с некоторыми полями ввода. Один из них используется для поиска элементов, которые пользователь должен выбрать и включить этот выбранный элемент в форму. Я пытался сделать это с unobstructive AJAX с помощью следующего кода:Элементы формы прохода к функции link_to

<td><%= link_to 'Search', select_customer_path(:search_customer), :remote => true, 
:submit=>"search_customer", :with => "'id='+ $('search_customer_').value" %></td> 

я не знаю, или, если это возможно передать поле search_customer функции link_to сделать процесс поиска. Далее приведен полный код формы.

<%= form_for @doc, url: docs_path, :remote => true do |f| %> 

<div class="row"> 
<div class="col-lg-8"> 
    <div class="well doc_form"> 
     <div class="field"> 
      <%= f.label :doc_date , :class => 'control-label'%> 
      <%= f.label Time.now.to_formatted_s(:short), :class => 'form-control' %> 
     </div> 
     <table> 
      <tr> 
       <td> <%= f.label :search_customer, "Customer Search:" %> </td> 
       <td> <%= text_field :search_customer, "" %> </td> 
       <td><%= link_to 'Search', select_customer_path(:search_customer), :remote => true, :submit=>"search_customer", :with => "'id='+ $('search_customer_').value" %></td> 
      </tr> 
     </table> 
     <div> 
      <div id="founded_customer" style="height: 200px; width: 350px;overflow: auto"></div> 
     </div> 
     <div class="field"> 
      <%= f.label "Selected Customer" , :class => 'control-label'%> 
      <div id="selected_customer" class="selected_customer"> 
       <%= f.hidden_field :customer, :value =>@doc.customer %> 
      </div> 
     </div> 
     <div class="field"> 
      <%= f.label :price , :class => 'control-label'%> 
      <%= f.number_field :price , :class => 'form-control'%> 
     </div> 
     <div class="field"> 
      <%= f.submit 'Save', :class => 'btn btn-primary' %> 
     </div> 
    </div> 
</div> 
</div> 
<% end %> 

Спасибо-х

+0

ли мой ответ помощь на всех? – MrYoshiji

ответ

0

Попробуйте с этим:

<%= link_to 'Search', select_customer_path(:search_customer), :onclick => "ajax_search($(this))" %> 

<%= javascript_tag do %> 
    window.ajax_search = function(link_to) { 
    $(this).preventDefault(); 
    var url_to_go = $(this).attr('href'); 
    var search_value = $('#search_customer').val(); 
    if(url_to_go.indexOf('?') > -1) { 
     url_to_go += '&search=' + search_value; 
    } else { 
     url_to_go += '?search=' + search_value; 
    } 
    $.ajax(url_to_go, success: function(data) { 
     # handle here the success response 
    }) 
    } 
<% end %> 
Смежные вопросы