【问题标题】:Use up/down arrows to scroll select list but keep focus on input element使用向上/向下箭头滚动选择列表,但将注意力集中在输入元素上
【发布时间】:2016-01-03 22:44:11
【问题描述】:

我希望用户能够使用向上/向下箭头滚动选择选项,但能够随时按 ctrl-c 从匹配的输入元素中无缝复制。

但我无法兼顾焦点。

我得到的最好的结果是它可以工作,但我必须按下两次才能移动到下一个选择元素。

这是我创建的一个小提琴,由于某种原因它甚至没有填充选择框。虽然它适用于我的服务器。在我的服务器上,picsarray 数组是用 PHP 生成的,但应该和这里的效果一样。

https://jsfiddle.net/bbmqy0xm/2/

【问题讨论】:

    标签: javascript jquery controls


    【解决方案1】:

    您可以不理会焦点,只需在设置后调用select() 以突出显示文本:

    function showpicture(selectobj) {
        /* deleted irrelevant js */
        $("#image_name").val($(selectobj).val()).select();  
    }
    

    https://jsfiddle.net/s4rmytt5/

    【讨论】:

    • 还有一个问题:在showpicture() 内部,我试图访问一个属性并在执行selectobj.options[selectobj.selectedIndex].value 时出现“无法读取未定义的属性'未定义'”错误。有什么想法吗?
    • 嘿,看看这个。尽管您的代码在小提琴上效果很好,但它会导致 showpicture 方法在一个地方接收一个 jquery“选项”,而在另一个地方接收一个常规的 js“选择”元素。我修改了您的代码以提供常规的“选择”元素,现在一切正常。太感谢了! jsfiddle.net/s4rmytt5/1
    猜你喜欢
    • 1970-01-01
    • 2012-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-17
    • 2014-08-03
    相关资源
    最近更新 更多