2012-05-31 12 views
0

Мы работаем над созданием демонстрационного примера с использованием высокопроизводительных диаграмм. Мы планируем получить данные в формате xml. Структура этого xml не будет исправлена. В основном XML должен представлять необработанные данные в табличном формате. Поэтому, если таблица содержит столбцы A, B, C, D, тогда xml будет содержать узел, который будет представлять строку в таблице. Чтобы проанализировать XML в jquery, вам нужно знать имя тега (согласно моим знаниям), но в этом случае я, возможно, не знаю, что такое имена тегов, потому что в одном случае таблица может содержать столбцы A, B, C, D и в в другом случае он может содержать столбцы T, U, V, W, X, Y, Z. Тогда как я могу обработать такой xml и предоставить данные на диаграмме? Любые рекомендации, предложения приветствуются. :)jquery xml parsing approach

e.g. in one case xml wil be - 
<record>-----there will be many such records 
<A>...</A> 
<B>...</B> 
<C>...</C> 
</record> 
. 
. 
. 
and in other case it can be - 

<record>-----there will be many such records 
<u>...</u> 
<v>...</v> 
<w>...</w> 
</record> 
. 
. 

ответ

0

Это звучит, как вы можете просто использовать $('record').children(), чтобы получить коллекцию JQuery из дочерних узлов, какими бы они ни были.

0

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

Насколько я знаю: Вам не нужны никакие имена тегов, за исключением, возможно, родительского или верхнего уровня тэга.

JQuery имеет много очень полезных и передовых методов DOM обхода, которые могут помочь - например:

$.children(); 
$.siblings(); 
$.next(); 
$.prev(); 
$.parent(); 
$.parents(); 
$.closest(); 
$.andSelf(); 
$.not(); 

Метод $.find('selector'); также довольно чертовски хорошо, если вы знаете, что вы ищете.

Так пример может быть:

var r1 = $('record').children(); //returns all child nodes of all <record> tags 
var r2 = $('record'); //gets all records 
var r3 = r2.children(); //the children of other records 

Не уверен, насколько близко, что подходит для вашего варианта использования, но вы можете прочитать больше о DOM обходе здесь: http://api.jquery.com/category/traversing/

Надеется, что это помогает