排除输入框默认文本,仅接受用户输入

时间:2012-03-01 00:34:24

标签: javascript jquery checkbox inputbox

我有几个复选框和一个输入框。用户可以勾选复选框或/并键入关键字。如果用户未在输入框中键入任何内容,则只应将复选框值传递给URL。如果用户在inout框中输入某个内容,它也应该传递输入框值。在我的情况下,它也在输入框中抓取默认文本“输入关键字”。我如何排除它并仅接受用户输入?

<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 :(得分:0)

为什么不考虑清空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'));
});