2016-05-29 45 views
2

HTML为什么addEventListener不能在datalist上工作?

<input type="text" list="countries" name="mycountry" /> 
<datalist id="countries"> 
    <option value="India">India</option> 
    <option value="United States">United States</option> 
    <option value="United Kingdom">United Kingdom</option> 
    <option value="Germany">Germany</option> 
    <option value="France">France</option> 
</datalist> 

JS

var a = document.getElementById('countries') ; 
a.addEventListener('change', function() {alert(this.value) ;} , false) ; 

我想在列表的选项会比警告框,选择显示值。

回答

3

您需要绑定监听器输入元素

var a = document.getElementsByName('mycountry')[0]; 
 
a.addEventListener('change', function() { 
 
    alert(this.value); 
 
});
<input type="text" list="countries" name="mycountry" /> 
 
<datalist id="countries"> 
 
    <option value="India">India</option> 
 
    <option value="United States">United States</option> 
 
    <option value="United Kingdom">United Kingdom</option> 
 
    <option value="Germany">Germany</option> 
 
    <option value="France">France</option> 
 
</datalist>

相关问题