Joe*_*Joe 2 javascript regex jquery
是否有一种通用的方式在jQuery或JavaScript(大多数跨浏览器兼容)中检查文本是否已突出显示?
我正在使用HTML <input type='text'>元素.这是一个搜索框,允许在搜索项目时使用特定格式.
用户可以输入以下内容:
在keydown我正在过滤各种搜索格式.按照目前的情况,如果输入了10个字符,并且它们都是数字,则input文本框只允许输入更多字符(如果它们是非数字字符).原因是,我们的项目编号长度为10位,如果用户正在搜索项目编号,我们只想捕获前10个字符而忽略其余字符.
我的目标是允许用户按项目编号查找项目,突出显示他们刚刚输入的文本,然后按项目编号搜索另一个项目(替换现有的搜索文本).但是,因为我们正在过滤非数字输入,所以不会捕获数字.
这是我如何过滤非数字:
if ($input.val().length == 10 && !isNaN($input.val().replace(' ', '#'))) {
if ((e.which >= 48 && e.which <= 57) || (e.which >= 96 && e.which <= 105)) {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
如何修改此项以确保如果我的文本突出显示,input将允许数字输入替换现有查询?
您可以使用该Selection对象:
var selection = window.getSelection();
Run Code Online (Sandbox Code Playgroud)
请参阅此处的文档:https://developer.mozilla.org/fr/docs/DOM/selection
使用此对象,您可以检查选定的dom节点(anchorNode).例如 :
if ($(window.getSelection().anchorNode).attr('id') === 'something') { ... }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4439 次 |
| 最近记录: |