[英]How to use angularjs ng-click with html5 datalist
我正在使用AngularJS,我想在選擇datalist(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
不適用於datalist選項,因為在使用datalist時似乎沒有觸發click事件(也沒有任何按鍵事件)。
您必須在函數input
上使用ng-change
並對其進行擴展以檢查當前值是否也存在於datalist中。
datalist與select相同,你沒有把事件處理程序放在選項中,你把事件處理程序放在select或input中。 此外,您不使用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模型在輸入上。
數據:
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"}]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.