Updaing a page continuously using ajax

I had written a small web app that gets the date(or any data) from a
external device and print it on screen(browser screen) continously
without refreshing the page.

I am using below form_tag inside view file
(myapp/app/views/index.html.erb):

<%= form_tag(channel_get_dates_path(@channel, :write => 1), :remote =>
true) do %>


<% end %>

and javascript method in view file (myapp/app/views/create.js.erb):
$("#get_date").val("<%= @get_date %>")

Here, when i press the button it will call the method in controller and
display the date in text field without any page refresh.

My question, Is it possible to make the date to display in text field
continuously by pressing the button only once? I tried calling the
Controller method inside a loop and ended with Double render error. is
it correct way or to make changes in view file?

my controller file(maapp/app/controller/get_dates_controller.rb):

class GetDatesController < ApplicationController
include DateUtilities

before_filter :require_user, :set_channels_menu

def index
@channel = current_user.channels.find(params[:channel_id])
@write_date = @channel.get_dates.write_dates.first
end

    def destroy
current_user.get_dates.find_by_get_date(params[:id]).try(:destroy)
redirect_to :back

end

def create

            @channel =

current_user.channels.find(params[:channel_id])
@get_date = @channel.get_dates.write_dates.first

if (@get_date.nil?)
  @get_date = GetDate.new
  @get_date.channel_id = @channel.id
  @get_date.user_id = current_user.id
  @get_date.write_flag = params[:write]
end

@get_date.get_date = generate_get_date

            respond_to do |format|
               @get_date.save
               format.html { redirect_to

channel_get_dates_path(@channel) }
format.js
end
end
end

and i have date generation file(myapp/app/lib/date_utilities) as:

module DateUtilities

def generate_get_date
require ‘rubygems’
require ‘socket’

hostname  =  '127.0.0.1'
port      =   2000
streamSock = TCPSocket.new( hostname, port )
streamSock.write "ON"
while line = streamSock.gets
    k = line
end
k

end
end

Deepak A. wrote in post #1105859:

My question, Is it possible to make the date to display in text field
continuously by pressing the button only once? I tried calling the
Controller method inside a loop and ended with Double render error. is
it correct way or to make changes in view file?

You need a bit of JavaScript to accomplish what you want. Read up on
setInterval() function:

Then use JQuery to update your input field in the function called each
time the setInterval() fires:

$(‘#get_date’).val(current_date);

How you get “current_date” is up to you. You can get the current date
directly in JavaScript or get it from the server using AJAX (Jquery).

http://api.jquery.com/jQuery.get/

Robert W. wrote in post #1105861:

Deepak A. wrote in post #1105859:

My question, Is it possible to make the date to display in text field
continuously by pressing the button only once? I tried calling the
Controller method inside a loop and ended with Double render error. is
it correct way or to make changes in view file?

You need a bit of JavaScript to accomplish what you want. Read up on
setInterval() function:

Window setInterval() Method

Then use JQuery to update your input field in the function called each
time the setInterval() fires:

$(‘#get_date’).val(current_date);

How you get “current_date” is up to you. You can get the current date
directly in JavaScript or get it from the server using AJAX (Jquery).

http://api.jquery.com/jQuery.get/

thanks for your precious suggestions, i have used setinterval function
in view file. And now i able to get date from the device continuously
without page refresh.