我有一个组合框,在更改控制台上记录值
jQuery( '#divid' ).on( 'change', function () {
console.log( jQuery( '#divid option:selected' ).text());
}
这很好用,但我觉得这是一段未经优化的代码。我已将其更改为以下代码
jQuery( '#divid' ).on( 'change', function () {
console.log( jQuery( '#divid' ).children("option").is("selected").text());
}
但是我收到错误
TypeError:jQuery(...)。children(...)。is(...)。text不是函数
我做错了什么?
答案 0 :(得分:6)
is()
方法返回一个布尔值,它没有text()
方法。为了满足您的需求,您可以filter()
使用:selected
:
jQuery('#divid').children("option").filter(":selected").text()
但是我会说,你的第一个例子没有任何问题,而且我认为由于更具可读性而更为可取。