исключить текст ввода по умолчанию, только пользовательский ввод - PullRequest
0 голосов
/ 01 марта 2012

У меня есть пара флажков и поле ввода.Пользователь может установить флажки или / и также ввести ключевое слово.Если пользователь ничего не вводит в поле ввода, в URL должны быть переданы только значения флажков.если пользователь вводит sth в поле ввода, ему также следует передать значение поля ввода.Ну, в моем случае, он также захватывает текст по умолчанию "введите ключевое слово" в поле ввода.Как я могу исключить это и принимать только пользовательский ввод?

<div class="LocationSearchBox">
    <input name="KeywordBox" class="BasicSearchInputBox" type="text" size="300" value="Enter Keyword"/> 
    <div class="searchBtnHolder"><a class="searchButton" href="#" type="submit"><span>Search</span></a></div>
</div>

Я так далеко ..

if (keywords.indexOf("Enter Keywords"))
                 {
                    window.location= url+checkboxValues;
                 }

                if (keywords.indexOf("Enter Keywords") == -1)
                 {
                    window.location= url+keywords+'*'+checkboxValues;
                 }

1 Ответ

0 голосов
/ 01 марта 2012

Почему бы вам не рассмотреть возможность очистки значения по умолчанию onfocus и присвоения его обратно onblur, если его значение пусто?

var keyW = $("input[name='KeywordBox']");
keyW.data('initVal',keyW.val());
keyW.focus(function() {
    if ($(this).val() == $(this).data('initVal')) $(this).val('');
});
keyW.blur(function() {
    if (/^\s*$/.test($(this).val())) $(this).val($(this).data('initVal'));
});
...