0

我有三个组合框(部门、类别和子类别),请参阅附加的 jsfiddle 示例:http: //jsfiddle.net/cFLQr/1/

当我选择第二个组合框(类别)时,会触发更改事件,但是由于某种原因,如果我随后立即单击第三个组合框(页面上没有任何其他交互),我会收到错误消息“无法读取属性‘值’不明确的”。

但是,如果我做的事情略有不同并选择第二个组合框(类别)然后单击页面上的其他位置,则该事件被触发两次(一次更改,一次单击页面上的其他位置)。第二个更改事件停止上述错误并传递正确的信息。

请你能帮我理解为什么点击页面上的其他地方会有第二个更改事件,以及为什么第一个更改事件不能完成第二个更改事件的工作。:-/

非常感谢丰富

PS 值得一提的是,我已经将一些虚拟数据放入其中以供小提琴使用。我在本地环境中动态调用数据

4

1 回答 1

0

基本上问题是您正在使用客户端对象公开的selectedIndex字段 - 这实际上不是公共字段。它是供内部使用的。

如果您想在更改事件发生时获取值和/或文本,您需要使用相应的方法 - text()value()

更改事件处理程序中, this指向客户端对象。

因此您可以键入this.text()以获取文本并this.value()获取值:)

这是一个更新的jsfiddle

http://jsfiddle.net/cFLQr/4/

于 2012-10-08T20:17:32.927 回答