Я новичок здесь, в AJAX. Просто протестировал функции, которые нужно было вставить в мое приложение, и создал код:
Получил это представление (index.html.erb)
<%= form_for :form, :remote => true, :url => {:action => "index"} do |f| %>
<input type="hidden" value="No" name="answer">
<input type="submit" value="No">
<% end %>
<%= form_for :form, :remote => true, :url => {:action => "index"} do |f| %>
<input type="hidden" value="Yes" name="answer">
<input type="submit" value="Yes" >
<% end %>
<div id="answerDiv"></div>
Получил этот контроллер (controller-perguntas.rb)
class ControllerPerguntasController
if params[:answer] == "Yes"
if PhrasesYes.all != []
@answer = PhrasesYes.first
else
@answer = "Yes phrase"
end
elsif params[:answer] == "No"
if PhrasesNo.all != []
@answer = PhrasesNo.first
else
@answer = "No phrase"
end
elsif params[:answer] == nil
@answer = "No phrases here"
end
end
конец
Получил это частичное (_answer-text.html.erb)
<%=@resposta%>
Получил этот javascript (index.js.erb)
$('#answerDiv').html("<%= escape_javascript(render(:partial => '_answer-text')) %>");
Я должен был нажать какую-нибудь кнопку (Да или Нет) и заполнить div #answerDiv объектом PhrasesYes или PhrasesNo, в зависимости от того, на какую кнопку я нажал.
Но каждый раз, когда журнал скриптов Chrome Inspector дает мне следующее:
POST http://localhost:3000/controller_perguntas/index 404 (Not Found)
jQuery.ajaxTransport.sendjquery.js:8103
jQuery.extend.ajaxjquery.js:7581
$.rails.rails.ajaxjquery_ujs.js:99
$.rails.rails.handleRemotejquery_ujs.js:154
(anonymous function)jquery_ujs.js:344
jQuery.event.dispatchjquery.js:3257
jQuery.event.add.elemData.handle.eventHandle
Что не так или отсутствует ??? Спасибо!