У меня есть виджет с автозаполнением jQuery, который имеет по умолчанию затененный текст во входном файле, например «Enter Something» http://jsfiddle.net/CwmX9/. После того, как пользователь что-то введет в поле ввода и выберет что-то из раскрывающегося списка, я хочу вернуть вход в затененный текст по умолчанию. Я почти делаю это, но он не затенен. Кроме того, в идеале мне не пришлось бы дублировать буквальный текст по умолчанию (т. Е. «Ввести что-то») дважды. Как изменить мой сценарий для этого?jQueryUI Autocomplete с текстом по умолчанию
PS. Пожалуйста, также объясните, почему иногда входное значение не всегда совпадает с символами, которые я вижу на входе. Я думаю, что это может быть связано с моим первоначальным вопросом.
<div class="ui-widget">
<label for="tags">Tags:</label>
<input id="tags" value="Enter Something" class="default-value" />
</div>
$('.default-value').each(function() {
var $t = $(this),
default_value = this.value;
$t.css('color', '#929292');
$t.focus(function() {
if (this.value == default_value) {
this.value = '';
$t.css('color', 'black');
}
});
$t.blur(function() {
if ($.trim(this.value) == '') {
$t.css('color', '#929292');
this.value = default_value;
}
});
});
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"];
$("#tags").autocomplete({
source: availableTags,
select: function (event, ui) {
console.log(this);
//console.log(this,$(this).val());
$(this).val('Enter Something').blur();
//console.log(this,$(this).val());
return false;
}
});
Не могли бы вы дать пример «входное значение не всегда то же самое, символы, которые я на самом деле вижу на вкладке "? –
@netme. Я думал, что видел это, но, возможно, ошибся. Мне нужно будет проверить позже. благодаря – user1032531