Как получить данные XML, используя ajax в jquery? - PullRequest
0 голосов
/ 04 июня 2011

Я хочу использовать ajax в jquery для получения данных для моей страницы ...

Проблема в том, что в URL, который я вызываю, есть несколько строк запроса, которые необходимо отправить вместе с ним ...

например: URL, который я вызываю для получения данных: -

http://mysite.in.dataengine.aspx? T = abcde & token = h34jk3 & f = xml

данные, которые я получаюв ответ на этот URL-адрес может быть в формате XML или массивов сценариев Java (в зависимости от того, что я выберу)

, например, ... XML будет выглядеть следующим образом: -

<root version="1.0">  
    <Regions>
    <Region SubCode="MWEST" RCode="west"/>  
    <Region SubCode="MCENT" RCode="north"/>  
    <Region SubCode="THAN" RCode="south"/>  
    </Regions>  
</root>

и JavaScriptмассив будет выглядеть так: -

Region = new Array();
Region.push(new Array('MWEST', 'west'));
Region.push(new Array('MCENT', 'north' ));
Region.push(new Array('THAN', 'south'));

Поэтому, когда я получаю данные, я хочу сохранить их в раскрывающемся списке (используя ajax)

Примечание В качестве возвращаемых данных я могу получить либо массивы xml ИЛИ javascript, но не оба вместе.

Ответы [ 4 ]

1 голос
/ 04 июня 2011

Вы можете сделать вызов ajax вместе с такими параметрами:

var paramsData = "t=abcde&token=h34jk3";
$.ajax({
    type: "GET",
    url: "dataengine.aspx",
    data: paramsData,
    dataType: "xml",
    success: function(xml){
           //process xml from server
    }
});
0 голосов
/ 07 июня 2011

Спасибо за вашу помощь, ребята ... но я нашел решение .... Как я уже сказал ... что я получаю взамен либо массив XML, либо JavaScript ... Так что ... я использую массивы JavaScript.и используя функцию в jquery * ($. getScript) *, которая извлекает внешний код javascript через ajax ... Таким образом, теперь я получаю все свои данные через ajax в jquery ...

0 голосов
/ 04 июня 2011

Просто разбери это. Я не уверен, что это сработает, но может:

xml = ...
region = new Array();

$(xml).find('Region').each(function() {
  region.push(new Array($(this).attr('SubCode'), $(this).attr('RCode'));
});
0 голосов
/ 04 июня 2011

Я бы посоветовал вам получать данные в формате JSON, так как Json изначально поставляется с javascript, и им гораздо легче манипулировать с использованием javascript по сравнению с XML. Самый простой способ решить вашу проблему - это сохранить все ваши данные в формате xml или json и поместить их в скрытый div, а затем использовать jQuery для заполнения этих данных в раскрывающемся списке. Вот удивительный плагин jquery с примером, который должен облегчить вашу работу http://plugins.jquery.com/project/jqueryclientdb

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