如何在node.js中使用cheerio获取元素名称
如何在cheerio中获取元素的名称?
相当于jQuery的是.attr('name')
但是在cheerio中返回undefined
。
只有一种情况,我想,当$someElement.attr('name')
返回undefined
– 如果该元素没有属性 name
。 例如…
var cheerio = require('cheerio'), $ = cheerio.load( '<input id="one" type="input" /><input id="two" name="some_name" />'); console.log( $('#one').attr('name') ); // undefined console.log( $('#two').attr('name') ); // some_name
请注意, <name>
属性仅适用于以下一组元素(MDN):
<a>, <applet>, <button>, <form>, <frame>, <iframe>, <img>, <input>, <map>, <meta>, <object>, <param>, <select>, <textarea>
要获取元素本身的名称(实际上是tagName ,但Cheerio将其抽象出来),请使用Cheerio容器中包含的底层元素的name
属性,如下所示:
console.log( $('#one')[0].name ); // input console.log( $('#two')[0].name ); // input