最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用angularjs創(chuàng)建簡單表格

 更新時間:2016年01月21日 10:11:58   投稿:hebedich  
AngularJS提供豐富填寫表單和驗證。我們可以用ng-click來處理AngularJS點擊按鈕事件,然后使用 $dirty 和 $invalid標志做驗證的方式。使用novalidate表單聲明禁止任何瀏覽器特定的驗證。下面我們來看看如何使用angularjs創(chuàng)建簡單表格

初步接手人生的第一個項目,需要用angularjs制作表格和實現各種功能,因此遇到了各種問題和以前不熟悉的知識點,在此記錄下來,以供大家學習交流,解決方式可能并不完善或符合規(guī)范,如果大家有更好的方式歡迎指出,由于這個表格功能的制作是一點點添加上去的,因此我也分成幾個部分介紹,日后如增加了新的功能也會不時更新的

首先,表格采用的是BootStrap樣式編輯的,主要使用的是angularjs,為了方便也有jQuery的方法,在測試時需自行引入bootstrap,angularjs和jq的文件。

正文:

HTML部分

生成表格比較簡單,主要是通過angularjs的數據綁定和ng-repeat來自動生成每一條信息。

1.首先需要自定義表頭的內容,即thead中的代碼

  1.1其中ng-model是復選框的全選功能,通過綁定該狀態(tài)的數據,可以將其同步賦予tbody中的所有checkbox(用ng-checked)

2.在tbody中通過ng-repeat來循環(huán)生成其中的每一條信息,其中:

  2.1<div class="text" contenteditable="true" ng-model="tb.por"></div>是支持輸入多行內容的div,可以方便快捷的替代textarea標簽,但是由于ng-model不支持div的數據綁定,因此需要使用directive 來自定義ngmodel功能,后面會說

  2.3 在ng-repeat中使用select標簽對其中進行數據綁定,也不能將ng-model綁定到每個option中,后面會有說明

3.最后只要將數據賦給$scope.saveData即可生成表格

<table class="table table-striped table-bordered table-hover"
            id="example" style="margin-top:10px;">
          <thead>
          <tr>
            <th style="width: 20px;" rowspan="2">全選 <br><input type="checkbox" ng-model="selectAll"></th>
            <th style="text-align: center; width: 50px;vertical-align: middle" rowspan="2">序號</th>
            <th style="text-align: center; width: 150px;vertical-align: middle" rowspan="2">名稱</th>
            <th style="text-align: center; width: 150px;vertical-align: middle" rowspan="2">日期</th>
            <th style="text-align: center; width: 150px;" colspan="3">比賽隊伍(紅)</th>
            <th style="text-align: center; width: 150px;" colspan="3">比賽隊伍(藍)</th>
            <th style="text-align: center; width: 150px;vertical-align: middle" rowspan="2">比分</th>
            <th style="text-align: center; width: 150px;vertical-align: middle" rowspan="2">說明</th>
            <th style="text-align: center; width: 150px;vertical-align: middle" rowspan="2">玩家支持隊伍</th>
          </tr>
          <tr>
            <th style="text-align: center; width: 80px;">第一場</th>
            <th style="text-align: center; width: 80px;">第二場</th>
            <th style="text-align: center; width: 80px;">說明</th>
            <th style="text-align: center; width: 80px;">第一場</th>
            <th style="text-align: center; width: 80px;">第二場</th>
            <th style="text-align: center; width: 80px;">說明</th>
          </tr>
          </thead>
<tbody ng-click="fun()" id="page" ng-show="isshow">
          <!--track by tb.id-->
            <tr ng-repeat="tb in saveDate"><!-- 只用angularjs實現點擊一行就選中全行暫時無法實現 -->
              <td style="width: 20px;"><input type="checkbox" ng-checked="selectAll"></td>
              <td style="text-align:center;">{{tb.id}}</td>
              <td style="text-align:center;">{{tb.zbname}}</td>
              <td style="text-align:center;">{{tb.zbtime}}</td>
              <td style="text-align:center;">{{tb.zbrul1}}</td>
              <td style="text-align:center;">{{tb.zbrul2}}</td>
              <td style="text-align:center;"><div class="text" contenteditable="true" ng-model="tb.por"></div></td>
              <td style="text-align:center;">{{tb.zbrul2}}</td>
              <td style="text-align:center;">{{tb.zbrul1}}</td>
              <td style="text-align:center;"><div class="text" contenteditable="true" ng-model="tb.por"></div></td><!-- 2016.1.19通過可編譯的div來代替輸入框 -->
              <td style="text-align:center;">{{tb.score}}</td>
              <td style="text-align:center;"><div class="text" contenteditable="true" ng-model="tb.por"></div></td>
              <td>
                <select name="" id="" ng-change="changetype(adds)" ng-model="adds" style="text-align:center;width:100%;min-width:80px;margin-bottom:0">
                  <option value="" ng-show="isShow">{{tb.type}}</option>
                  <option value="支持紅方">支持紅方</option>
                  <option value="支持藍方">支持藍方</option>
                  <option value="雙方相同">雙方相同</option>
                </select>
              </td>
            </tr>
          </tbody>
        </table>

JS部分:備注所有的script部分的代碼都寫在angular.module("myModule",[]).controller('myCtrl', function($scope) {寫在這里}中

復制代碼 代碼如下:

$scope.isshow=true;
//    模仿請求得到的數據
$scope.saveDate=[{ id:1,zbname:"中亞賽區(qū)比賽",zbtime:"2015-12-03",zbrul1:"勝利",zbrul2:"失敗",por:"請輸入說明內容",score:"2:1",type:"支持紅方"},
{ id:2,zbname:"日韓賽區(qū)比賽",zbtime:"2015-11-11",zbrul1:"勝利",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"支持藍方"},
{ id:3,zbname:"歐美賽區(qū)比賽",zbtime:"2015-3-03",zbrul1:"失敗",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"雙方相同"},
{ id:4,zbname:"中東賽區(qū)比賽",zbtime:"2016-1-05",zbrul1:"勝利",zbrul2:"失敗",por:"請輸入說明內容",score:"2:1",type:"支持藍方"},
{ id:5,zbname:"北京賽區(qū)比賽",zbtime:"2014-12-23",zbrul1:"失敗",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"雙方相同"},
{ id:6,zbname:"韓國賽區(qū)比賽",zbtime:"2015-11-01",zbrul1:"失敗",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"雙方相同"},
{ id:7,zbname:"日本賽區(qū)比賽",zbtime:"2011-1-23",zbrul1:"勝利",zbrul2:"失敗",por:"請輸入說明內容",score:"2:1",type:"支持紅方"},
{ id:8,zbname:"中亞賽區(qū)比賽",zbtime:"2013-12-15",zbrul1:"失敗",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"支持藍方"},
{ id:9,zbname:"中亞賽區(qū)比賽",zbtime:"2015-10-17",zbrul1:"失敗",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"支持紅方"},
{ id:10,zbname:"中亞賽區(qū)比賽",zbtime:"2015-11-21",zbrul1:"勝利",zbrul2:"勝利",por:"請輸入說明內容",score:"2:1",type:"支持藍方"},
{ id:11,zbname:"中亞賽區(qū)比賽",zbtime:"2015-2-02",zbrul1:"失敗",zbrul2:"失敗",por:"請輸入說明內容",score:"2:1",type:"支持紅方"},
{ id:12,zbname:"中亞賽區(qū)比賽",zbtime:"2015-2-05",zbrul1:"勝利",zbrul2:"失敗",por:"請輸入說明內容",score:"2:1",type:"雙方相同"}
]; // var arr=[];//用于分別綁定ngrepeat中生成的各條數據信息

相關文章

  • 詳解Angular組件之中間人模式

    詳解Angular組件之中間人模式

    設計一個組件時,組件應該是內聚的,應該不依賴外部已經存在的組件,要實現這種松耦合的組件要使用中間人模式。
    2021-05-05
  • 關于使用axios的一些心得技巧分享

    關于使用axios的一些心得技巧分享

    vue更新到2.0之后,作者就宣告不再對vue-resource更新,而是推薦的axios,所以下面這篇文章主要給大家分享了關于使用axios的一些心得技巧,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • 淺談angularJS2中的界面跳轉方法

    淺談angularJS2中的界面跳轉方法

    今天小編就為大家分享一篇淺談angularJS2中的界面跳轉方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • 詳談Angular路由與Nodejs路由的區(qū)別

    詳談Angular路由與Nodejs路由的區(qū)別

    下面小編就為大家?guī)硪黄斦凙ngular路由與Nodejs路由的區(qū)別。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 詳解AngularJs路由之Ui-router-resolve(預加載)

    詳解AngularJs路由之Ui-router-resolve(預加載)

    本篇文章主要介紹了詳解AngularJs路由之Ui-router-resolve(預加載),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Angular.js中用ng-repeat-start實現自定義顯示

    Angular.js中用ng-repeat-start實現自定義顯示

    大家都知道Angular.js可以用ng-repeat來顯示列表數據,可是如果想要自定義顯示數據列表的話ng-repeat就實現不了了,這個時候可以利用ng-repeat-start 和 ng-repeat-end來實現,下面通過本文來詳細看看實現的方法吧。
    2016-10-10
  • Angularjs中三種數據的綁定策略(“@”,“=”,“&”)

    Angularjs中三種數據的綁定策略(“@”,“=”,“&”)

    在AngularJS的指令中存在著三種綁定策略,他們分別是’=’,’@’,’&’。下面這篇文章主要介紹了Angularjs中這三種數據的綁定策略,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • Angular 2父子組件數據傳遞之@Input和@Output詳解 (上)

    Angular 2父子組件數據傳遞之@Input和@Output詳解 (上)

    這篇文章主要給大家介紹了關于Angular 2父子組件數據傳遞之@Input和@Output的相關資料,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面跟著小編一起來看看吧。
    2017-07-07
  • angularjs 源碼解析之scope

    angularjs 源碼解析之scope

    $scope 的使用貫穿整個 Angular App 應用,它與數據模型相關聯,同時也是表達式執(zhí)行的上下文.有了 $scope 就在視圖和控制器之間建立了一個通道,基于作用域視圖在修改數據時會立刻更新 $scope,同樣的 $scope 發(fā)生改變時也會立刻重新渲染視圖.
    2016-08-08
  • AngularJS通過ng-Img-Crop實現頭像截取的示例

    AngularJS通過ng-Img-Crop實現頭像截取的示例

    本篇文章主要介紹了AngularJS通過ng-Img-Crop實現頭像截取的示例,具有一定的參考價值,有興趣的可以了解一下
    2017-08-08

最新評論

公安县| 宝应县| 城市| 巩义市| 东平县| 沁阳市| 无为县| 阿克苏市| 嘉定区| 昌吉市| 宁德市| 行唐县| 田东县| 晋城| 兴海县| 江津市| 东阳市| 吉木萨尔县| 吉安县| 牙克石市| 麻阳| 扶绥县| 两当县| 吉水县| 霍邱县| 林芝县| 富源县| 金堂县| 汪清县| 马公市| 平昌县| 枣阳市| 祁门县| 轮台县| 望都县| 青海省| 永胜县| 晋江市| 象山县| 昌江| 林口县|