2016-04-14 1 views
0

У меня есть список, какНПМ здор`ово - добавить идентификатор в список элементов

<ul> 
    <li>Name1</li> 
    <li>Name2 </li> 
</ul> 

Использование НПМ Cheerio как добавить каждый элемент списка текст в нижнем регистре идентификатор к самому элементу?

Так что исход будет

<ul> 
    <li id="name1">Name1</li> 
    <li id="name2">Name2 </li> 
</ul> 

На данный момент я добавляю статический идентификатор, используя

var cheerio = require('cheerio'), 
    $ = cheerio.load('<ul><li>Hello world</li></ul>'); 

$('li').attr('id', 'new-id') 

console.log($.html()) 

Благодарности

+0

вы можете сгенерировать их на лету, используя петлю wh если длина цикла будет количеством элементов в вашем неупорядоченном списке, используя немного javascript – jmugz3

+0

Я работаю на стороне сервера, соскабливая некоторый html, созданный из файлов md .. –

+1

cheerio имеет [каждый метод] (https://www.npmjs.com/package/cheerio#each-functionindex-element-), который вы можете использовать, и в своем обратном вызове вы можете добавить id с помощью [.attr()] (https: //www.npmjs .com/package/cheerio # attr-name-value-) с функцией, которая включает номер в имени – jmugz3

ответ

1

Это должно сделать трюк ..

$('li').each(function(i, elem) { 

     $(this).attr('id', $(this).text().toLowerCase().replace(/\s/g, '')); 

    })