YUI AJAX и .Net MVC - PullRequest
       11

YUI AJAX и .Net MVC

2 голосов
/ 14 декабря 2010

У меня возникла небольшая проблема со смесью между YJI AJAX и YUI Datatable.Запрос AJAX срабатывает правильно, и я получаю обратно правильные данные, отформатированные как:

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

Они правильно соответствуют идентификаторам таблицы, и я извлек это форматирование из оператора, который первоначально создает таблицу данных (которая работает правильно).Я не знаю, испортил ли 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 Ответ

1 голос
/ 14 декабря 2010

Похоже, вам нужно преобразовать 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) в вашем обратном вызове.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...