我想弄清楚如何使用 jQuery 突出显示输入框中的部分文本。突出显示输入框的全部内容非常简单,但是如何突出显示一个单词或几个字母?
谢谢!
我想弄清楚如何使用 jQuery 突出显示输入框中的部分文本。突出显示输入框的全部内容非常简单,但是如何突出显示一个单词或几个字母?
谢谢!
对于文本<input>
元素,以下将完成这项工作。该示例仅选择输入中的单词“two”:
function setInputSelection(input, startPos, endPos) {
input.focus();
if (typeof input.selectionStart != "undefined") {
input.selectionStart = startPos;
input.selectionEnd = endPos;
} else if (document.selection && document.selection.createRange) {
// IE branch
input.select();
var range = document.selection.createRange();
range.collapse(true);
range.moveEnd("character", endPos);
range.moveStart("character", startPos);
range.select();
}
}
document.getElementById("setSelection").onmousedown = function() {
var input = document.getElementById("i");
setInputSelection(input, 4, 7);
return false;
};
<input id="i" type="text" value="One two three">
<input type="button" value="Set selection" id="setSelection">
您需要选择整个值,然后在代码中操作字符串。根据您尝试对单词执行的操作,您可能会考虑使用正则表达式来匹配某些单词/字母。