我有一个asp:listbox,我从数据库填充。但是,当我用鼠标悬停在选项ID上时,我正在尝试检索选项ID。我通常会做的是附加一个鼠标悬停事件,但显然在IE选项中无法识别鼠标悬停事件!那么我有什么方法可以得到我目前的选项吗?
<select size="4" name="lstbox_AdvCat" id="lstbox_AdvCat" style="height:500px; width:285px;">
<option value="0" Title="">None</option>
<option value="1" Title="Accessories
Clothing
Footwear
Jewelry
Watches">Apparel, Footwear, Accessories</option>
我真正需要做的就是检索一些东西,这样我就可以说'我在x'元素上,这样我就可以在面板中显示一些其他信息。
有没有明智的方法可以做到这一点?
我将列表框包含在div中并附加了一个事件
function lstbox_AdvCatOver(mEvent) {
//internet explorer
if (mEvent.srcElement) {
alert(mEvent.srcElement.nodeName);
}
//the others
else if (mEvent.target) {
alert(mEvent.target.nodeName);
}
}
我有兴趣看到我会得到什么,但我不知道如何扩展它以使其有用 - 任何帮助。
感谢。
答案 0 :(得分:0)
只需使用原生JS就可以看起来像这样:
HTML:
<select size="4" name="lstbox_AdvCat" id="foo" style="height:500px; width:285px;">
<option value="0" Title="">None</option>
<option value="1" Title="Accessories
Clothing
Footwear
Jewelry
Watches">Apparel, Footwear, Accessories</option>
</select>
JS:
function lstbox_AdvCatOver(mEvent) {
alert("nodeName: [" + this.nodeName + "] - value: [" + this.value + "]");
}
var options = document.getElementById("foo").options;
for (var i = 0; i < options.length; i++) {
var option = options[i];
option.onmouseover = lstbox_AdvCatOver;
}