我有這樣的json副主題:無法申請JSON對象過濾器的角度JS與NG選項
[{
"id": "200",
"topicID": "20",
"name": "Support for project hosted by ncegitref1"
},
{
"id": "201",
"topicID": "20",
"name": "Support for project hosted by rndwww (Stash)"
},
{
"id": "210",
"topicID": "120",
"name": "Upload SSH key"
}]
和我的JavaScript是這樣的:
$http.get(urlsub).success(function(response) {
$scope.subtopics = response;
console.log($scope.subtopics);
});
$scope.selectedTopic = {};
$scope.TopicChanged = function(topic) {
$scope.displayTopicDescription = true;
$scope.topicDesc = topic.description;
$scope.selectedTopic.topicID = topic.id;
$scope.sub = topic.id ;
console.log($scope.sub);
};
我的控制檯打印值20.子主題存儲上面的json。我在NG選項時使用此過濾器使用的過濾器下面,
<select id="selectSubtopic" ng-model="topicsPopulate" ng-disabled="!topicsPopulate" ng-options="subtopic.name for subtopic in subtopics | filter:{topicID:sub}:true ">
<option value="" disabled selected>Select Subtopic</option>
</select>
,我看到在下拉列表中,而不是前兩個所有三個subtopic.name。我基本上想要根據我用$ scope發送的topicID來過濾子主題。
你好,我一點兒也不工作。它也會在下拉菜單中顯示「上傳SSH密鑰」。 –
你是說這個笨蛋不工作,或者它不是你想要的行爲? – jbrown
讓我給你一個清晰的畫面。我有兩個下拉菜單,主題下拉菜單和副主題下拉菜單。副主題下拉菜單保持禁用狀態,直到選中了主題,然後我將所選主題作爲ng-change函數中的參數發送,該函數設置了我在子主題下拉菜單中使用的$ scope變量,以過濾屬於此主題的子主題。但顯然,過濾器會檢查字符串是否存在,也就是說它爲id = 20選擇id = 2000。 –