Rails Ajax не работает

0

Я думаю, это из-за моего меньшего знания Ajax.

Используя Ajax, я пытаюсь сделать непрерывный аякс-вызов на моем сервере.
Я делаю ademo приложение для обучения.

У меня есть следующий код:

В моей job_status/index.html.erb

<h1>Loading data ......</h1>

<div id = "job-id-container">
    Aditya
</div>


<script type="text/javascript">
    function tick() {
      var ajaxOpts = {
            type: "get",
            url: "/job_statuses",
            dataType: 'json',
            data: "status=reload"

        };
    $.ajax(ajaxOpts);
    setTimeout('tick()', 1000);
}

$(document).ready(function() {
    tick();
});
</script>

В моей job_statuses_controller

class JobStatusesController < ApplicationController
    def index       
        @job = JobStatus.last       
    end
end

В моем index.js.erb

$('#job-id-container').append("<%= @job.message %>")

В моей консоли браузера я получаю ответ 304 и его не обновляю данные на моей странице.

Скажите, где я ошибаюсь, и предлагаю правильный код.

  • 0
    Я не совсем уверен, что вы спрашиваете. Возможно, опишите сообщение об ошибке и что вы пытаетесь выполнить. А пока вы можете посмотреть это и посмотреть, отвечает ли он на ваш вопрос: railscasts.com/episodes/324-passing-data-to-javascript

2 ответа

0

Лично не проверенный, попробуйте smth вот так:

<script>
function repeat_ajax_call(){
   $.get("/job_statuses", function(data){
        console.log(data);
        $('#job-id-container').append(data.message);
   }, 'json');
}

$(repeat_ajax_call);
$(document).on("turbolinks:load", repeat_ajax_call);
</script>

контроллер:

def index       
  @job = JobStatus.last
  respond_to do |format|
    format.html { @job }
    format.json { render json: json_format(@job) }
    #OR
    format.json { render json: {data: @job}}
  end
end
0

у меня есть

 dataType: 'json' 

который был за исключением данных в json, и я хочу визуализировать скрипт. устранение этой строки устранило проблему.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню