2010-12-13 7 views
2

私は、YUIのAJAXとYUI Datatableのミックスに少し問題があります。YUI AJAXと.Net MVC

{NoteId:'" + result.NoteId + "', CreatedOn:'" + result.CreatedOn.ToShortDateString() + 
        "', UpdatedOn:'" + result.UpdatedOn.ToShortDateString() + "', CreatedBy:'" + result.CreatedBy + 
        "', NoteContent:'" + result.NoteContent + "'} 

は、これらが適切にテーブルのIDと一致する、と私は(正常に動作)最初にデータテーブルを作成する声明からこのフォーマットをリッピング:AJAX要求火災が適切と私はとしてフォーマット正しいデータを取り戻します。 「onSuccess」がAJAXコールに混乱しているかどうかは分かりませんが、これが初めてYUIに触れることになります。

また、手動でnoteTable.addRowを実行してデータをハードコードすると、正常に動作します。 AJAX呼び出しと表の更新のための

コード:

function addNote() { 
      var noteText = editor.get('element').value; 
      var id = '<%= Model.Menu.Level1Tab %>' 
      var lpqId = <%= Model.LpqID %> 
      var sUrl = "/Lpm/Notes"; 
      var callback = { 
        success: function(o) { 
          noteTable.addRow(o.responseText); 
         }, 
        failure: function(o) { 
         } 
        } 

      var transaction = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, 'id=' + id + '&noteContent=' + noteText + '&noteId=' + noteId + '&lpqId=' + lpqId); 
     } 

私はこの上でかなりよくこだわっているので、誰もが見ていると私は何かを台無しにどこ私に知らせことができれば、私は感謝しますそれ。もっと情報が必要な場合、私はfirebugのデバッグ情報を含めてたくさんあります。 ご協力いただきありがとうございます

答えて

1

文字列からオブジェクトにo.responseTextを変換する必要があります。 JSONユーティリティは、あなたがそれを行うのを助けることができます:http://developer.yahoo.com/yui/json/

DataTableのDataSource統合は、これらの問題の管理に役立ちます。この例(http://developer.yahoo.com/yui/examples/datatable/dt_xhrjson.html)は、DataSourceをセットアップし、DataTableと統合する方法を示しています。サーバーからデータを取得し、 "onDataReturn ..."メソッド(「http://developer.yahoo.com/yui/datatable/#data」の下の「実行時にデータをロードする」を参照)のいずれかをコールバックで使用する要求を送信する方法に注意してください。

関連する問題