开发者问题收集

为什么 html 选择元素未定义?

2021-01-10
1106

这真的很奇怪。 我还有其他选择的框以相同的方式定义,但据说这是不确定的。 这是html:

426988101

我可以在此时的下拉列表中看到一个选项。

这是javascript,它是附加另一个选项:< /p> 171220838

刚刚将其正确显示在列表中的选择元素的值。 我可以在下拉列表中看到两个项目:“我的第一个监视列表”和“我的portfolio”(来自后端呼叫)。

,但控制台。读取未定义的属性“长度”

当附加功能正常时, $ $('#selwatchlist') 是不确定的,我可以看到两个选项? 我花了几个小时试图跟踪问题而无济于事。

2个回答

尝试

console.log("loadWatchlists: selWatchlist.options.length=", $('#selWatchlist')[0].options.length);

[0]get(0) 添加到任何 jQuery 对象的末尾,即可获得“真实”的 DOM 元素(或第一个 DOM 元素,如果有多个匹配)。

Sachith Wickramaarachchi
2021-01-10

$('#selWatchlist') 返回匹配元素的列表,而不仅仅是一个元素,因此它没有 .options 。您需要从该列表中获取第一个元素:

$('#selWatchlist').get(0).options.length
ceejayoz
2021-01-10