2010-12-13 29 views
2

J'ai un peu de problème avec un mélange entre AJAX de YUI et un YUI Datatable. Les feux de demande AJAX correctement et je récupérer les données correctes formatées comme:YUI AJAX et .Net MVC

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

Ces correspondent aux identités de table correctement, et je ripped cette mise en forme de la déclaration qui crée initialement datatable (qui fonctionne correctement). Je ne sais pas si j'ai le 'onSuccess' foiré pour mon appel AJAX ou quoi, et c'est la première fois que je touche YUI.

En outre, si j'exécute manuellement le noteTable.addRow et le code dur les données, cela fonctionne.

code pour l'appel AJAX et le tableau Mise à jour:

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); 
     } 

Je suis assez bien coincé à ce sujet, donc si quelqu'un pouvait jeter un oeil et laissez-moi savoir où je foiré quelque chose, je vous en serais reconnaissant il. Si vous avez besoin de plus d'informations, j'en ai plein, y compris les informations de débogage firebug. Merci d'avance pour l'aide

Répondre

1

On dirait que vous devez convertir le o.responseText de chaîne en objet. L'utilitaire JSON peut vous aider à le faire: http://developer.yahoo.com/yui/json/. Par ailleurs, l'intégration DataSource de DataTable peut vous aider à gérer ces problèmes. Cet exemple (http://developer.yahoo.com/yui/examples/datatable/dt_xhrjson.html) vous montre comment configurer un DataSource et l'intégrer à un DataTable. Notez comment vous pouvez envoyer une requête pour obtenir des données de votre serveur, puis utiliser l'une des méthodes "onDataReturn ..." (voir "Chargement des données à l'exécution" sous http://developer.yahoo.com/yui/datatable/#data) dans votre rappel.