在IE中没有触发列表框选项的双击事件

Fio*_*ite 6 jquery events internet-explorer listbox double-click

我想将一个事件附加到列表框中的选项标签,以便当我单击其中一个时,它会移动到另一个列表框.

我有这个代码:

$('#' + opts.leftListId + ' > option').live('dblclick', function () {
     // Move the object
});
Run Code Online (Sandbox Code Playgroud)

在Firefox中运行良好,但在IE中事件根本没有被触发.我不能在select节点上双击,因为我只需要移动被点击的节点.有任何想法吗?

Asp*_*und 7

Doubleclick不会触发,即如果您尝试将它们添加到选项元素,无论您如何添加它.我在IE中工作的唯一一件事就是将事件监视添加到选择本身,然后查看所选元素:

$("select").dblclick(function () {
  $("select option:selected").each(function () {
    alert(this);
  });
});    
Run Code Online (Sandbox Code Playgroud)


Ale*_*lex 6

试试这个:

$('#' + opts.leftListId).find('option').each(function(){
  $(this).live('dblclick', function () {
     // Move the object
  });
});
Run Code Online (Sandbox Code Playgroud)

更新(GMT 10:21)

尝试取出直播:

$('#' + opts.leftListId).find('option').each(function(){
  $(this).dblclick( function () {
     // Move the object
  });
});
Run Code Online (Sandbox Code Playgroud)

看这个例子 - http://jsfiddle.net/hr7Gd/

更新(格林尼治标准时间10:45)

你的另一个选择是dblclick()在选择上运行(有效!)并且已经选择了获取选项的谷值并使用它:

$("select").dblclick(function () {
  var str = "";
  $("select option:selected").each(function () {
    str += $(this).text() + " ";
  });
  $("span").text(str);
})
.trigger('change');
Run Code Online (Sandbox Code Playgroud)

看这个在这里工作的例子 - http://jsfiddle.net/hr7Gd/1/