2017-01-02 4 views
3

Я хотел бы найти способ очистить выбор ui-select по коду.Как очистить ui-select программно?

Например, у меня есть следующий код

<ui-select ng-model="selectedCustomerCode" ng-if="CustomerIds.length>1" on-select="CustomerCodeFiltersOnSelectCallback($item, $model)" theme="bootstrap"> 
    <ui-select-match class="ui-select-match" allow-clear="true" placeholder="Επιλογή κωδικού πελάτη...">{{$select.selected.CCode}}</ui-select-match> 
    <ui-select-choices class="ui-select-choices" repeat="customer in CustomerIds | propsFilter: {CCode: $select.search}"> 
    <div ng-bind-html="customer.CCode | highlight: $select.search"></div> 
    </ui-select-choices> 
</ui-select> 

Я хочу, чтобы чокнуться на четкую кнопку и очистить некоторые исходные данные, включая пользовательский интерфейс-выберите. Что такое код для очистки ui-select?

ответ

2

Вы должны очистить cont.selectedCustomerCode переменную:

<button ng-click="cont.selectedCustomerCode = ''">clear</button> 

Edit:

Вы должны разоблачить вас атрибуты переменной. Это рекомендуемый способ.

+0

Это имеет смысл, но Я уже пробовал и не работал. Странно то, что я положил

{{selectedCustomerCode}}
в мой html и он ничего не показывает до или после выбора любого из ui-select – vagelis

+0

@vagelis i сделал редактирование. Можете ли вы попробовать мое предложение и сказать мне, работает ли оно? –

+1

@AbdellahAlaoui ваше предложение разрешает это. – Kof

1

Существует опция allow-clear для ui-select-match, которая делает вещь для вас, у вас будет x справа, и вы можете очистить ее, щелкнув по ней. https://github.com/angular-ui/ui-select/wiki/ui-select-match

<ui-select-match allow-clear="true" placeholder="Select or search in a list..."> 
    <span>{{$select.selected.name}}</span> 
</ui-select-match> 

рабочий пример http://plnkr.co/edit/DbbUE68QlNLjx97pBZ56?p=preview

+0

, который может быть решением, но я хотел бы сделать это с помощью кода с другой кнопки, которая очищает все входы html, которые у меня есть в форме. – vagelis

+0

затем нажмите кнопку «Очистить». Ng-model .like $ scope.selectedCustomerCode = '' или {} или []. что бы это ни было –

+0

Я пробовал все, но ничего не работает. Странно то, что я поставил

{{selectedCustomerCode}}
в моем HTML и ничего не показывает, до или после любого выбора Ui-выберите – vagelis

1

Проблема была решена. Я не знаю, почему, но только с выбранным кодомCustomerCode в ng-модели работает неправильно. я гнал на selectedCustomerCode внутри объекта

ng-model="selectedCustomer.selectedCustomerCode" 

, а затем очистить его, как этот

selectedCustomer.selectedCustomerCode = '' 

Если бы я имел

ng-model="selectedCustomerCode" 

Прозрачный

selectedCustomerCode = '' 

d id not work

Смежные вопросы