[英]Search input with common search values
I want to create a search input that, when I focus on it, a menu of options shows, and when I select, it can be concatenated to the search text. 我想创建一个搜索输入,当我专注于它时,会显示一个选项菜单,当我选择时,它可以连接到搜索文本。 Example:
例:
|------------------------------------------------------|
| | |
| | |
|------------------------------------------------------|
| |
| VALUE1 |
|--------------------------------|
| |
| VALUE2 |
|--------------------------------|
And when I click on VALUE1 my search text will be like "VALUE1:TEXT_TO_FIND". 当我点击VALUE1时,我的搜索文本就像“VALUE1:TEXT_TO_FIND”。
This way, I can filter my return data easily from client side. 这样,我可以轻松地从客户端过滤我的返回数据。
Thanks, 谢谢,
LN LN
<input type="text" id="field" /><br>
<select style="display:none;" id="hint" size="4">
</select>
...
var words = ["base","barrel","barbie","battle","bell","bench","breach"];
function init(){
document.getElementById('field').onkeyup = hint;
document.getElementById('hint').onchange = select;
}
function hint(){
var hintElement = document.getElementById('hint');
var fieldElement = document.getElementById('field');
var str = fieldElement.value.substring(fieldElement.value.lastIndexOf(' ')+1);
if(str == '')
return;
hintElement.innerHTML = '';
for(var i in words)
if(words[i].substring(0,str.length) == str)
hintElement.innerHTML += '<option value="'+words[i]+'">'+words[i]+'</option>';
hintElement.style.display = (hintElement.innerHTML == '') ? 'none' : '';
}
function select(){
var fieldElement = document.getElementById('field');
fieldElement.value = fieldElement.value.substring(0,fieldElement.value.lastIndexOf(' ')+1) + this.value + ' ';
this.innerHTML = '';
this.style.display = 'none';
document.getElementById('field').focus();
}
init();
选择的jQuery插件可能是个不错的选择。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.