简体   繁体   中英

Unable to select dropdown option more than once

I have a dropdown and I want to detect all the events, even if they are the same, when custom period is selected a modal is displayed, but I need that the user be able to use this modal all the times he want, even if is selected, here is the code:

<div class="form-group">
<select width="'100%'" ng-model="selection.date.mode"
        class="form-control input-sm" ng-change="setDateMode()">
    <option value="d" ng-show="visible.date.d" >Day</option>
    <option value="w" ng-show="visible.date.d" >Week</option>
    <option value="m" ng-show="visible.date.d" >Month</option>
    <option value="y" ng-show="visible.date.d">Year to Date</option>
    <option value="c" ng-show="visible.date.d" >Custom</option>
    <option value="l" ng-show="visible.date.d" >Last 30 days</option>
</select>

AngularJS function:

function setDateMode() {
    $scope.selection.date.mode === "c" ? clickCustomInput() : dateSelected();
}

Basically you should think twice whether you really need this. You can only achieve it by adding a click-directive to each option:

 <option value="d" ng-show="visible.date.d" ng-click="setDateMode()">Day</option>

This will cause double calls of setDateMode() with each selection except the selected value stays the same. But you can't remove ng-change() from the select-element because when ng-click() fires the dropdown list doesn't know the currently selected value yet...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM