我想只有一种情况$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 抽象了它),使用name
包装在 Cheerio 容器中的底层元素的属性,如下所示:
console.log( $('#one')[0].name ); // input
console.log( $('#two')[0].name ); // input