如何使用jQuery获取html <option>标记的内容
我有一个简单的选择标签:
<select>
<option></option>
<option></option>
</select>
然后我想用jQuery获取选项的内容:
var s=$('select option');
for(var i=0;i<s.length;i++){
console.log(s[i]);
}
它只会显示"<option>"
,没有内容。
如果我使用console.log(s[i].html());
它会告诉我这是错误的。
那么我怎样才能获得内容?
你不需要jQuery来获取文本内容。
HTMLOptionElement
具有.text
属性。
var s = $('select option');
for(var i = 0; i < s.length; i++) {
console.log(s[i].text);
}
虽然如果你想要元素的.outerHTML
(你的问题有点困惑),你可以这样做......
var s = $('select option');
for(var i = 0; i < s.length; i++) {
console.log(s[i].outerHTML);
}
...尽管最近才在Firefox中可用,所以您可以创建一个方法来修补它...
function outerHTML(el) {
return el.outerHTML || document.createElement('div')
.appendChild(el.cloneNode(true))
.parentNode
.innerHTML;
}
...并像这样使用它...
var s = $('select option');
for(var i = 0; i < s.length; i++) {
console.log(outerHTML(s[i]));
}
假设'内容'是指选项的文本值,请尝试以下操作:
$("select option").each(function() {
console.log($(this).text());
});
使用text()方法提取元素的文本节点值
链接地址: http://www.djcxy.com/p/83079.html