2016-04-17 60 views
2

我需要做以下的事情: 使用的JavaScript,具有文本类型和选择标签(组合框)的HTML的输入标签,创建一个可编辑的组合框。我不知道如何使组合框可编辑。你能给我一些建议吗?编辑组合框的Javascript和HTML

我创建这样的组合框,但显然是不可编辑:

<html> 
    <label>Your preferred programming language: </label> 
    <select id="combobox"> 
     <option value="">Select one...</option> 
     <option value="ActionScript">ActionScript</option> 
     <option value="AppleScript">AppleScript</option> 
    </select> 
</html> 

我应该在哪里使用的输入标签?

+0

这是很好的做法,接受一个答案或要求获得进一步的援助,如果没有一个答案适合:) – deiga

回答

1

尝试这样:

<label>Your preferred programming language: </label> 
<input type="text" id="new_value"/> 
<select id="combobox"> 
    <option value="">Select one...</option> 
    <option value="ActionScript">ActionScript</option> 
    <option value="AppleScript">AppleScript</option> 
</select> 



$("#new_value").keyup(function (e) { 
    if (e.keyCode == 13) { // enter key 
     var value = $(e.currentTarget).val(); // store the value from the input tag 
     var option = $("<option/>");   // create a new option tag 
     option.val(value).text(value);   // set the value attribute as well as the content 
     $("#combobox").append(option);   // insert the new object to the dom 
    } 
}); 
5

HTML5包括datalist元件,它解决了这个问题! :)

<html> 
 
    <label>Your preferred programming language: </label> 
 
    <input type="text" list="combo-options" id="combobox"> 
 
    <datalist id="combo-options"> 
 
     <option value="ActionScript">ActionScript</option> 
 
     <option value="AppleScript">AppleScript</option> 
 
    </datalist> 
 
</html>