检查是否已选择输入项文本?

时间:2010-06-15 15:29:02

标签: javascript jquery html

我有文本输入项并使用select()我可以突出显示其中的文本,但有时文本已经被选中是有正当理由的,当我运行select()时,它会取消选择我认为,是否可以检查输入项是否被选中?

2 个答案:

答案 0 :(得分:1)

您可以使用http://www.codetoad.com/javascript_get_selected_text.asp检查选择。

您必须检查选择是否在您的输入项目中。

var selecttxt = '';
if (window.getSelection) {
    selecttxt = window.getSelection();
} else if (document.getSelection) {
    selecttxt = document.getSelection();
} else if (document.selection) {
    selecttxt = document.selection.createRange().text;
}

var textofinput = [...]; // put code to find text in input here

if (textofinput.indexOf(selecttxt) !== -1) {
    // part of the text in the input is selected
    alert('Conditions met!');
}

答案 1 :(得分:0)

您可以使用以下代码获取页面中所选元素的ID:

elem_offset = document.getSelection().anchorOffset;
elem = document.getSelection().anchorNode.childNodes[elem_offset];
alert(elem.id);