# AngularJS實現根據不同條件顯示不同控件
由于項目需求,需要實現根據不同條件顯示不同控件的功能。具體要求如下圖所示:
?
即當選擇“每單固定減”時,下方只顯示“減免金額”一欄;
當選擇“每單固定折扣”時,下方只顯示“折扣比例”一欄;
當選擇“每單滿額減”時,下方只顯示“滿..減..”兩欄。
根據自己對angular的了解,應該可以很輕松的實現此功能。
js設置控件的隱藏與顯示,設置控件style的display和visibility屬性就可以了。
用JavaScript隱藏控件的方法有兩種,分別是通過設置控件的style的“display”和“visibility”屬性。
當style.display="block"或style.visibility="visible"時控件可見,當style.display="none"或style.visibility="hidden"時控件不可見。不同的是“display”不但隱藏控件,而且被隱藏的控件不再占用顯示時占用的位置,而“visibility”隱藏的控件僅僅是將控件設置成不可見了,控件仍然占俱原來的位置。
執行結果截圖如下:
?
### 附
部分源碼如下:
~~~
function?displayHideUI()
{
var?ui?=document.getElementById("bbs");
ui.style.display="none";
}
function?displayShowUI()
{
var?ui?=document.getElementById("bbs");
ui.style.display="";//display為空的話會好使,為block會使后邊的空間換行
}
function?visibilityHideUI()
{
var?ui?=document.getElementById("bbs");
ui.style.visibility="hidden";
}
function?visibilityShowUI()
{
var?ui?=document.getElementById("bbs");
ui.style.visibility="visible";
}
</script>
~~~
值?描述
none?此元素不會被顯示。
block?此元素將顯示為塊級元素,此元素前后會帶有換行符。
inline?默認。此元素會被顯示為內聯元素,元素前后沒有換行符。
inline-block?行內塊元素。(CSS2.1新增的值)
list-item?此元素會作為列表顯示。
run-in?此元素會根據上下文作為塊級元素或內聯元素顯示。
compact?CSS?中有值compact,不過由于缺乏廣泛支持,已經從CSS2.1?中刪除。
marker?CSS?中有值marker,不過由于缺乏廣泛支持,已經從CSS2.1?中刪除。
table?此元素會作為塊級表格來顯示(類似<table>),表格前后帶有換行符。
inline-table?此元素會作為內聯表格來顯示(類似<table>),表格前后沒有換行符。
table-row-group?此元素會作為一個或多個行的分組來顯示(類似<tbody>)。
table-header-group?此元素會作為一個或多個行的分組來顯示(類似<thead>)。
table-footer-group?此元素會作為一個或多個行的分組來顯示(類似<tfoot>)。
table-row?此元素會作為一個表格行顯示(類似<tr>)。
table-column-group?此元素會作為一個或多個列的分組來顯示(類似<colgroup>)。
table-column?此元素會作為一個單元格列顯示(類似<col>)
table-cell?此元素會作為一個表格單元格顯示(類似<td>和<th>)
table-caption?此元素會作為一個表格標題顯示(類似<caption>)
inherit?規定應該從父元素繼承display屬性的值。
- 前言
- (一)深入理解ANGULARUI路由_UI-ROUTER
- (二)AngularJS路由問題解決
- (四)ANGULAR.JS實現下拉菜單單選
- (五)Angular實現下拉菜單多選
- (六)AngularJS+BootStrap實現彈出對話框
- (七)實現根據不同條件顯示不同控件
- (十)AngularJS改變元素顯示狀態
- (十四)AngularJS靈異代碼事件
- (十七)在AngularJS應用中實現微信認證授權遇到的坑
- (十八)在AngularJS應用中集成科大訊飛語音輸入功能
- (十九)在AngularJS應用中集成百度地圖實現定位功能
- (二十一)Angularjs中scope與rootscope區別及聯系
- (二十三)ANGULAR三宗罪之版本陷阱
- (二十四)AngularJS與單選框及多選框的雙向動態綁定
- (二十五)JS實現導入文件功能
- (二十七)實現二維碼信息的集成思路
- (二十八)解決AngualrJS頁面刷新導致異常顯示問題
- (二十九)AngularJS項目開發技巧之localStorage存儲
- (三十)AngularJS項目開發技巧之圖片預加載
- (三十一)AngularJS項目開發技巧之獲取模態對話框中的組件ID
- (三十二)書海拾貝之特殊的ng-src和ng-href
- (三十三)書海拾貝之簡介AngularJS中使用factory和service的方法
- (三十四)Angular數據更新不及時問題探討
- (三十六)AngularJS項目開發技巧之利用Service&Promise&Resolve解決圖片預加載問題(后記)