jqueryUI自动完成“开始输入”文本?

时间:2011-03-15 19:40:37

标签: jquery jquery-ui

是否有一种简单的方法可以在jQueryUI上使用自动完成功能获取文本,例如“请开始键入搜索”?

我没有为自动执行此操作的小部件找到任何in the options

3 个答案:

答案 0 :(得分:1)

<强>更新 添加

value="Please start typing" 

到输入标签。 您还可能需要在输入中添加onclick以在单击时清除文本 即。

$('#searchBox').click(function(){
    if( $(this).val() == 'Please start typing'){
        $(this).val('');
    }
});
如果你只想第一次调用它,那么这里有一点点改进:

var watermark = 'please start typing';
var searchBox;

function setWatermark(){
     searchBox = $('#searchBox');
     searchBox.val( watermark );
     searchBox.bind('click',clearWatermark);
}

function clearWatermark(){
    if( $(this).val() == watermark){
         $(this).val('');
         searchBox.unbind('click',clearWatermark);
    }
}

$(document).ready(function(){
   setWatermark();
});

答案 1 :(得分:1)

实现水印会导致大量的手动工作,并且大多数代码可能需要重新工作,具体取决于业务逻辑。

尝试使用jquery水印插件。 这将为您提供一个良好的开端,包括:

<script type="text/javascript" src="http://labs.mario.ec/jq-watermark/jquery.watermark.js"></script>

并添加此事件处理程序

$(document).ready(function () {
         $('idOfTextBox').watermark('Please enter', { 
             className: 'lightText' 
         });
});

指定css样式类名称

.lightText{
//whatever color
}

答案 2 :(得分:0)

使用

怎么样?
autocomplete( "result", handler )

并使用函数'handler'获取该文本?