Разбор массива объектов JSON - PullRequest
3 голосов
/ 01 ноября 2009

Я очень новичок в использовании Jquery и Json. У меня есть сервлет, который возвращает массив JSONObject (в основном объект JSONArray).

Я пытаюсь проанализировать этот массив в JavaScript и у меня возникли проблемы. У меня есть переменная javascript «var result», которая получает результат от сервлета, и я пытаюсь проанализировать его как result [0] .uniqueId, например, чтобы получить значение uniqueId, отправленное с сервера. Но это не похоже на работу.

Ниже приведен фрагмент кода Java-сервлета, показывающий, что отправляется клиенту javascript.

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
                    JSONArray arrayObj = new JSONArray();
             List<Folder> children =getFolders(request,response);
             Iterator itr = children.iterator();
             while(itr.hasNext())
             {
                 Folder folder = (Folder) itr.next();
                 obj = new JSONObject();
                 obj.put("uniqueId", folder.getUniqueId());
                 obj.put("folderName", folder.getFolderName());
                 obj.put("size", folder.getSize());
                 obj.put("modified", folder.getModified());

                 arrayObj.add(obj);
             }
            out = response.getWriter();
            response.setContentType("application/json");
            out.println(arrayObj);           
} 

Это фрагмент кода jquery

$.ajax({
            url: 'getFolders',
            type: 'POST',
            data: 'uniqueID=' + uniqueID ,
            //console.log(data);
            success: function(result) {  
                //parse result
                        alert("JSON result "+ result[0].uniqueId);

                }//end success
    });

Пожалуйста, дайте совет, как разобрать результат.

Спасибо Deepthi

1 Ответ

3 голосов
/ 01 ноября 2009

Вам необходимо установить для параметра dataType тип данных, которые вы ожидаете от сервера:

$.ajax({
              dataType: 'json',
              url: 'getFolders',
              type: 'POST',
              data: 'uniqueID=' + uniqueID ,
              //console.log(data);
              success: function(result) {  
              //parse result
                    alert("JSON result "+ result[0].uniqueId);

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