你好,我正在尝试获取一个输入的选定值,当输入是用Tab键聚焦时。这是我的代码,
HTML、
<input id='texteb' type="text" value=''/>
<button>
click
</button>
JS系统
$(function(){
$(window).on('keyup', function (e) {
var focused = $(':focus');
if (e.which === 9){
var text = focused;
var t = text.value.substring(text.selectionStart, text.selectionEnd - text.selectionStart);
alert(t);
}
});
});
但我得到这个错误,
TypeError:未定义文本值
这是它的Jsfiddle。
有了答案,这个问题可以用.瓦尔()解决,但是selectionStart似乎给出了undef
1条答案
按热度按时间lnvxswe21#
我看了看你瞎搞了一个改了行的6:jsfiddle - modified
您获得
undefined
的原因是您要获取的jQuery对象(即“focused”)不具有这些属性(value
、selectionStart
等)。然而,您真正需要的是javascript对象,它可以使用focused[0]
获得。有关更多方法,请检查以下内容:How do I pull a native DOM element from a jQuery object?(来自:(https://learn.jquery.com/)
(ps.我想知道你在用这段代码做什么?)