У меня есть два выпадающих списка с одинаковой проблемой. мой вызов, когда я выбираю 1, выбирается другой. Кроме того, если есть ошибка проверки, она выдает только одно выпадающее меню. Что мне не хватает?Угловое - два выпадающих списка с одним источником данных
<div class="form-group">
<label for="ctctype_id">
Current CTC
</label>
<select class="form-control" name="ctctype_id" id="ctctype_id" data-ng-model="formJobApplyData.salary_range"
data-ng-options="salary.key for salary in salaryList" data-validate-selected-keyvalue></select>
</div>
<div data-ng-messages="jobForm.ctctype_id.$error" data-ng-show="jobForm.ctctype_id.$invalid && (jobForm.ctctype_id.$touched || jobForm.ctctype_id.$dirty)" class="form-message">
<p data-ng-message="validselectedkeyvalue">
Please select your current CTC from the list
</p>
</div>
<div class="form-group">
<label for="exptype_id">
Expected CTC
</label>
<select class="form-control" name="expctc_id" id="expctc_id" data-ng-model="formJobApplyData.salary_range"
data-ng-options="salary.key for salary in salaryList" data-validate-selected-keyvalue></select>
</div>
<div data-ng-messages="jobForm.expctc_id.$error" data-ng-show="jobForm.expctc_id.$invalid && (jobForm.expctc_id.$touched || jobForm.expctc_id.$dirty)" class="form-message">
<p data-ng-message="validselectedkeyvalue">
Please select your expected CTC from the list
</p>
</div>
Мой Javascript Valiation:
app.directive('validateSelectedKeyvalue', function() {
return {
restrict: 'A',
require: 'ngModel',
link: function (scope, elem, attr, ctrl) {
ctrl.$validators.validselectedkeyvalue = function (viewValue) {
if (typeof (viewValue) != 'undefined') {
return ((typeof (viewValue.id) != 'undefined') && viewValue.id != 0) ? true : false;
}
else { return true; }
}
}
};
});
В чем смысл двух прямоугольников, привязанных к одному и тому же ngModel? Или это проблема? У вас не должно быть двух ящиков с одной и той же ng-моделью. Кроме того, не ваш валидатор в основном то же самое, что и 'required'? –
Как вы можете видеть ... они служат двум различным целям - нужно запросить текущую зарплату и другую для ожидаемой зарплаты. Список тот же. Я могу создать две ng-модели. но он будет повторяться. –
Если они обслуживают разные куклы, то они должны быть связаны с разными переменными. Вы не можете хранить две разные зарплаты в одной переменной зарплаты. Вам нужна переменная для текущей зарплаты, а другая для ожидаемой зарплаты. –