0

私は初心者です。変更のポーリング(railscast 229)とcoffeescを介したフォーム送信を試みています。

jQuery ->

MessagePoller =
  poll: ->
    setInterval MessagePoller.request("get_new": "yes"), 1000
    true
  request : (data) ->
    $.ajax(
      type: "POST",
      url: $("#messageform").attr("action")
      data: data
      dataType: "JSON"
    ).success (json) ->
      alert(json)
      #act on result.
    false


 $("#formsubmit").click ->
   valuesToSubmit = $("textarea#message").val()
   sendData = {"message" : valuesToSubmit}
   $("ul#messages").append("<li>" + valuesToSubmit +  "</li>")
   $("textarea#message").val('')
   MessagePoller.request(sendData)
   false # prevents normal behaviour

 MessagePoller.poll()

ただし、@request は 1 回しか機能しません。

手伝って頂けますか?

4

1 に答える 1

2

交換:

poll: ->
  setInterval MessagePoller.request("get_new": "yes"), 1000

request : (data) ->

と:

@poll: ->
  setInterval ->(MessagePoller.request("get_new": "yes")), 1000

@request : (data) ->

基本的:

  • インスタンスメソッドとクラスメソッドの間で混乱します

  • あなたは閉鎖が必要です

于 2013-04-05T09:38:25.563 に答える