我正在使用php&javascript。我已经为下拉菜单编写了代码。现在我想写一个代码,在文本框中输入单词&它将从下拉列表中提示单词。就像我在文本框中输入"abc"一样,它会从下拉列表中给出所有以"abc"开头的结果。请用php或javascript为我提供正确的代码。。。这将满足我的条件。非常感谢。下面是一个下拉代码。我要搜索&建议代码。
<label>Site Name:</label>
<select id="combobox">
<option value=""></option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="fiat">Fiat</option>
<option value="audi">Audi</option>
</select>
<input type="submit" name="submit" value="submit"/>
也许数据列表元素可以帮助
<form action="action_page.php">
<input list="browsers">
<datalist id="browsers">
<option value="Internet Explorer">
<option value="Firefox">
<option value="Chrome">
<option value="Opera">
<option value="Safari">
</datalist>
</form>
取自:http://www.w3schools.com/html/html_form_elements.asp
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist
编辑:
如果您只想要一个javascript解决方案:添加:
<input type="text" id="search" onkeyup="change()" />
和
var e = document.getElementById("combobox");
var t = document.getElementById("search");
function change() {
var ts = t.value.toLowerCase();
if (ts.length < 1) {
e.selectedIndex = 0;
return;
}
for (var i = 0; i < e.options.length; i++) {
var es = e.options[i].text.toLowerCase();
if (es.lastIndexOf(ts, 0) === 0) {
e.selectedIndex = e.options[i].index;
return;
}
}
e.selectedIndex = 0;
}