Я пытаюсь получить только выбранную часть входной строки, которая была выбрана пользователем. Скажем, у меня есть этот вход:
<input type="text" name="first_name" id="first_name" value="Enter your name" />
И пользователь выбирает "Ввести" слово путем перетаскивания в текстовом поле. Я могу получить тот текст с jQuery?
Я знаю, что могу получить целое значение этот путь:
$("#first_name").val();
Но до сих пор, я не нашел так или иначе для получения, только выбранные "Вводят" часть. Кто-либо может указать на меня в правильном направлении?Спасибо!
Править
Я попробовал document.getSelection, и он работает отлично в Firefox на элементе статического текста, таком как "p". Это не работает на меня до сих пор на вводе текста.
В IE window.selection.createRange () .text работает и над "p" и во вводе текста.
Хорошо, вот окончательный ответ. Похоже, нам нужно использовать selectionStart и selectionEnd вместо getSelection (), когда мы работаем с input или textarea. Вот мой тестовый код:
$(".name").mouseup(function()
{
var selected_text = "";
if (window.getSelection) // Firefox
{
var text = $(this).val();
selected_text = text.substring(document.activeElement.selectionStart, document.activeElement.selectionEnd);
}
else // IE
{
selected_text = document.selection.createRange().text;
}
alert(selected_text);
});
А мой HTML-код прост:
<input type="text" name="name" class="name" value="Enter your name" />
Итак, я наконец получил его. Спасибо за вклад!
Это можно сделать, используя Функция выбора jQuery и document.getSelection
http://www.devguru.com/Technologies/ecmascript/quickref/doc_getselection.html http://api.jquery.com/select/
Это может помочь. Вам нужно будет использовать функцию .select ()
.
Вы можете использовать обычный метод замены javascript.
$("#first_name").val().replace("Enter your name", "")
См. Пример: http://jsfiddle.net/gezDF/
Однако другим вариантом может быть удаление текста, когда пользователь вводит поле. Это можно сделать примерно так:
$(document).ready(function(){
$("#first_name").focus(function () {
$(this).val("");
});
});
См. Пример: http://jsfiddle.net/JNmAF/