Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: изменить немного парсер XML

Сообщения:  [1-3] 

 
 автор: elenaki   (26.06.2006 в 15:38)   письмо автору
 
   для: elenaki   (26.06.2006 в 14:30)
 

все. разобралась. парсер менять не надо, он хороший :)
просто надо проверять, что у нас - строка или массив,
и по-разному выводить элементы. ура! я теперь такого
понаделаю :)

   
 
 автор: elenaki   (26.06.2006 в 14:30)   письмо автору
 
   для: elenaki   (25.06.2006 в 17:29)
 

а перед этим вот это:


// ================================================================
//  every child/children into array
JKL.ParseXML.prototype.setOutputArrayAll = function () {
    this.setOutputArray( true);
}
//  a child into scalar, children into array
JKL.ParseXML.prototype.setOutputArrayAuto = function () {
    this.setOutputArray( null);
}
//  every child/children into scalar (first sibiling only)
JKL.ParseXML.prototype.setOutputArrayNever = function () {
    this.setOutputArray( false );
}
//  specified child/children into array, other child/children into scalar
JKL.ParseXML.prototype.setOutputArrayElements = function ( list ) {
    this.setOutputArray( list );
}



помогите, а? как сделать, чтоб из строки делал массив из одного элемента, а не массив букв?

сам парсер вот тут:

   
 
 автор: elenaki   (25.06.2006 в 17:29)   письмо автору
 
 

нашла парсер XML на Java-script. всем довольна, быстро работает, все делает, что надо, только...

если в списке дочерних элементов только один элемент, он не строит массив из одной строки, а делает массив из букв этого элемента. получается вместо одного слова в 7 букв - 7 элементов undefined :(

как бы это исправить? вот тут, кажется, он переделывает элементы XML в массивы и строки:



//  specify how to treate child/children into scalar/array
JKL.ParseXML.prototype.setOutputArray = function ( mode ) {
    if ( typeof(mode) == "string" ) {
        mode = [ mode ];                // string into array
    }
    if ( mode && typeof(mode) == "object" ) {
        if ( mode.length = 0 ) {
            mode = false;               // false when array == [] 
        } else {
            var hash = {};
            for( var i=0; i<mode.length; i++ ) {
                hash[mode[i]] = true;
            }
            mode = hash;                // array into hashed array
            if ( mode["*"] ) {
                mode = true;            // true when includes "*"
            }
        } 
    } 
    this.usearray = mode;
}

   

Сообщения:  [1-3] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования