Я множественный выбор, как это:Выберите несколько отображаемых имена вместо идентификаторов с помощью AngularJS
<select ng-model="listProds" multiple>
<option value="10">product 1</option>
<option value="25">product 2</option>
<option value="35">product 3</option>
<option value="48">product 4</option>
</select>
Значения являются Идентификаторами для этих продуктов (и это переключатель генерируется с использованием PHP)
& I «ве получил этот простой код в моем app.js
файле:
var app = angular.module('myapp', []);
app.controller("PurchasesController", function($scope) {
// Init products Array
$scope.listProds = [];
});
Когда я отображения listProds
как это {{listProds}}, I получить массив, содержащий текущие выбранные элементы, но он показывает только идентификаторы, если я выберу их все ["10","25","35","48"]
.
<fieldset ng-show="listProds.length > 0">
<div data-ng-repeat="p in listProds track by $index">
{{ p }} <!– Or –> {{ listProds[$index] }}
<input type="text" name="pr{{ listProds[$index] }}" />
<input type="text" name="qt{{ listProds[$index] }}" />
</div>
</fieldset>
Этот код генерирует два текстовых поля, чтобы ввести цену и количество для каждого продукта в выбранном из списка выбора. Поэтому вместо использования {{ p }}
или {{ listProds[$index] }}
и отображения идентификатора продукта, я хочу отобразить там Название продукта.
Заранее спасибо.
Я не могу использовать этот вариант, потому что я не знаю, как заполнить listProds в вашем примере, потому что мой переключателе заполняется автоматически с использованием рамок CakePHP, и я просто добавил к нему ng-модель. – dwix
У вас есть доступ к PHP? Можете ли вы сделать запрос на получение списка продуктов, вместо того, чтобы PHP генерировать HTML для вас? В противном случае вам нужно будет выбрать элементы DOM, чтобы получить отображаемое имя, которое не является угловым способом делать вещи. – c0deNinja
Я думал, что есть другой способ. И да, у меня есть доступ к PHP, я думаю, что я просто '$ http.get()' список продуктов – dwix