Javascript 如何在html5数据列表中使用AngularNG点击

Javascript 如何在html5数据列表中使用AngularNG点击,javascript,html,angularjs,angularjs-ng-click,html-datalist,Javascript,Html,Angularjs,Angularjs Ng Click,Html Datalist,我正在使用AngularJS,我想在选择数据列表(html5)的元素时使用指令ng click 下面是我实际代码的一个示例: <label>Search</label> <input type="text" class="input-search" list="datalistcit" ng-change="changeQuery(queryCity)" ng-model="queryCity" /> <datalist id="datalistcit"

我正在使用AngularJS,我想在选择数据列表(html5)的元素时使用指令
ng click

下面是我实际代码的一个示例:

<label>Search</label>
<input type="text" class="input-search" list="datalistcit" ng-change="changeQuery(queryCity)" ng-model="queryCity" />
<datalist id="datalistcit">
   <option ng-repeat="city in cities" ng-click="goCity(city)" value="{{city.name}}">
   </option>
</datalist>
搜索

它不起作用,永远不要执行js方法goCity。。有什么想法吗?

数据列表与选择相同,您没有将事件处理程序置于选项中,而是将事件处理程序置于选择或输入中。 另外,您不使用ng click,而是使用ng change进行此操作

<input list="stateList"  name="state" ng-model = "payCntrl.billingAddressService.billingAddress.state">
    <datalist id="stateList">
        <select>
            <option ng-repeat="state in payCntrl.billingAddressService.states | filter : {country : payCntrl.billingAddressService.billingAddress.country}" 
                                    value="{{state.name}}"></option>
       </select>    
   </datalist>

ng click
在数据列表选项上不起作用,因为使用数据列表时似乎不会触发click事件(或任何按键事件)


您必须在功能
input
上使用
ng change
,并扩展该功能以检查当前值是否也存在于数据列表中。

您的数据列表中可能需要ng模型。我知道如果它是一个没有ng-model的select标签,它将不起作用。。下面是一个例子,请尝试我的答案。我将事件放入数据列表中,但不起作用。。这里是一个en示例,我说ng更改,ng模型需要输入或选择,不要输入数据列表或选项。
states : [{name : "NJ" , country: "USA"} ,  {name : "NY" , country: "USA"} , 
         {name : "GA" , country: "USA"} ,   {name : "TX" , country: "USA"} , 
         {name : "CA" , country: "USA"} , 
         {name : "Delhi" , country: "India"} ,  {name : "Karnataka" , country: "India"} , 
         {name : "Hyderabad" , country: "India"} ,  {name : "West Bengal" , country: "India"} , 
         {name : "Zhejiang" , country : "China"} , {name : "Hubei" , country : "China"},
         {name : "LONDON" , country : "United Kingdom"} , {name : "MANCHESTER" , country : "United Kingdom"}]