2015-03-22 3 views
1

Привет, ребята, я пытаюсь сделать частичное использование ajax remote true.Rails Ajax Форма не отображается (с помощью пульта: true)

На моей ссылке «новый аукцион» у меня есть дистанционное значение true. Я также создал отдельный файл 'new.js.erb'. Когда щелкнули ссылку «новый аукцион», моя консоль chrome показывает мне статус 200 OK. Также, когда я нажимаю ответ, я вижу, что файл 'new.js.erb' читается enter image description here. Однако форма, которую я хочу показать dosnt, появляется!

Это dosnt дает мне какие-либо ошибки, поэтому я не уверен, что делать или как действовать ?!

Вот код внутри моего new.js.erb файла:

$('#current_auctions').prepend("<%= j render partial: 'form' %>"); 
} 

Вот код для моего фактического вида (_form.html.erb):

<div class="form-group" id="new_auction"> 
     <%=form_for @auction do |a|%> 
     <%=a.label :titlee%> 
     <%=a.text_field :title, class:"form-control"%> 
     <%=a.label :detailss%> 
     <%=a.text_area :details,class:"form-control"%><br> 
     <%=a.label :endz_onn%> 
     <%=a.date_field :ends_on, class:"form-control"%><br> 
     <%=a.label :reserve_pricee%> 
     <%=a.number_field :reserve_price, class:"form-control"%><br> 
     <%=a.submit "Create", class: "btn btn-default"%> 
     <%end%> 
     </div> 

Вот является код моей страницы индекса (index.html.erb -Этот где я хочу предварять новую форму выше)

<div id="current_auctions"> 
<h3 class="heading"> Current Auctions </h3><hr> 

<%@auctions.each do |auction| %> 
    <strong><%=link_to auction.title, auction%><br></strong> 
    <%=auction.details%><br><br> 
    Ends on:<%=auction.ends_on%><br> 
    Reserve Price:$<%=auction.reserve_price%><br> 
    <hr> 
<%end%> 
</div> 

Мой link_to выглядит следующим образом:

<%=link_to "New Auction", new_auction_path, remote: true%><br> 

Мои маршруты выглядеть следующим образом: enter image description here

Если я предварять обычный текст, enter image description here это показывает, так что я знаю его проблемы с тем, как им оказывающего частичное, но это выглядит правильно для меня, Я хочу понять, почему он не работает

Я использую Ruby On Rails, Sublime Text 2, PostGreSQL

+0

Вы настроили маршрут для своей ссылки, чтобы получить/отправить сообщение? Если да, можете ли вы добавить его на свой вопрос, пожалуйста? –

+0

@NickM извините за неполную почту, я просто добавил link_to –

+0

у вас на самом деле есть '# current_auctions' на странице? – DGM

ответ

1

Я хотел бы создать отдельный <div> для формы

в index.html.erb:

<div id="current_auctions"> 
    <div id="insert_form"> </div> 
    <h3 class="heading"> Current Auctions </h3><hr> 

    <%@auctions.each do |auction| %> 
    <strong><%=link_to auction.title, auction%><br></strong> 
    <%=auction.details%><br><br> 

затем использовать это в вашем парциальное:

$('#insert_form').html("<%= j render partial: 'form' %>"); 
+0

добавление метода сообщения в мою ссылку дает мне: POST http: // localhost: 3000/auction/new 404 (не найдено) –

+0

Я знаю, что это кажется предполагаемым, но возможно изменение ': method =>: get' – Beartech

+0

Я пробовал это, но дает мне тот же результат, что и раньше (без ошибок, но без отображения формы) –

0

Я хотел бы добавить id непосредственно к ссылке в index.html.erb

<%=link_to "New Auction", new_auction_path, id: 'new_auction_link' remote: true%><br> 

и чем в new.js.erb

$('#new_auction_link').after('<%= j render 'form' %>'); 
Смежные вопросы