How to use angularjs ng-click with html5 datalist

前端 未结 3 1833
陌清茗
陌清茗 2021-01-18 05:52

I\'m working with AngularJS and i want to use the directive ng-click when an element of a datalist (html5) is selected.

Here is an example of my actual

相关标签:
3条回答
  • 2021-01-18 06:26
    <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>
    
    • The name and ng-model are on the input .

      Data :

      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"}] 
      
    0 讨论(0)
  • 2021-01-18 06:29

    datalist is same as select, you don't put the event handler in option, you put the event handler in select or input. Also you don't use ng-click, you use ng-change for this.

    0 讨论(0)
  • 2021-01-18 06:33

    ng-click won't work on datalist options, as the click event (nor any of the keypress events) doesn't seem to be fired when using the datalist.

    You will have to use your ng-change on the function input and extend that to check if the current value is also present in the datalist.

    0 讨论(0)
提交回复
热议问题