我想隱藏每個使用ng-hide指令的沒有內容的標籤(簡單文本)。 下面是我想要實現的:
<div class="menu-head" ng-hide="c1.section == ''">{{c1.section}}</div>
但是這不起作用。然而,下面的兩個評估爲真(用於測試目的我設置c1.section字段的「第1」的值)和相應的div變爲隱藏的:
<div class="menu-head" ng-hide="c1.section == c1.section">{{c1.section}}</div>
<div class="menu-head" ng-hide="c1.section == 'Section 1'">{{c1.section}}</div>
的c1.section是經由如何在標籤爲空時隱藏標籤(不包含文本)
<div ng-repeat="c1 in col1">
訪問從該控制器:
function MenuCtrl($scope) {
"use strict";
$scope.col1 = MenuData.col1;
$scope.col2 = MenuData.col2;
$scope.col3 = MenuData.col3;
}
當對象COL1可以,或可以不包含字段 '部分'。所以很明顯,無論何時從對象中缺少一個字段(任何字段),我都希望它的div在DOM中丟失/不顯示。這裏的MenuData對象:
var MenuData = {
col1: [
{section: 'Section 1'}, // <-here the fields id, name, price and descr are missing so their divs must not show up in the DOM.
{
id: '1',
// section: 'Section 2', <- here the field section is missing (commented-out).
name: 'Position 1',
price: '2.50',
descr: 'some description'
},
{section: 'Section 3'},
{
id: '2',
section: 'Section 4',
name: 'Position 2',
price: '4.75',
descr: ''
}
]
};
我如何NG隱藏的表達,以評估爲「真」時,有在「c1.section」數據綁定沒有內容?
什麼是'c1.section'?你最初設定的是什麼?它是'空字符串'還是可能未定義? –
你可以用'ng-show'來代替嗎? – imaginaryboy
@BenjaminGruenbaum我已經更新了我的問題。 –