2012-04-17 3 views
0

У меня есть XML-файл, который я загружаю через jQuery, после загрузки XML я прочитал XML, получая значения. Проблема, с которой я сталкиваюсь, заключается в том, что XML имеет элемент с именем VAL, внутри которого есть дочерний элемент, также называемый VAL. Поэтому, когда я использую:jquery возвращает значения XML как одну строку вместо отдельных значений

var val = $(loadedElements[i]).find('val').text(); 
console.log("val = ", val); 

Я получаю все элементы val как одну строку, не разделенную как родительский и дочерний.

Вот пример XML я работаю:

<e> 
    <name>myElement</name> 
    <type>TEXT</type> 
    <val>text to display</val> 
    <acts> 
     <act> 
      <type>CLICK</type> 
      <val>http://www.example.com</val> 
     </act> 
    </acts> 
</e> 

В этом примере XML, когда я выводить вал с помощью console.log("val = ", val); я вижу: вал = "текст для отображения http://www.example.com.

Как я могу выделить два элемента VAL?

Благодаря

Стивен

ответ

0

Попробуйте это, вы должны получить на вас правильный путь:

$(loadedElements[i]).find('val').each(function() { 
    console.log(this); 
}); 

или это:

var val = $(loadedElements[i]).find('val'); 
console.log($(val[0]).text()); 
console.log($(val[1]).text());​ 

FIDDLE

+0

Brill Янт, первый вариант работал, спасибо. – StephenAdams