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

使用AngularJS處理單選框和復(fù)選框的簡單方法

 更新時間:2015年06月19日 10:54:00   投稿:goldensun  
這篇文章主要介紹了使用AngularJS處理單選框和復(fù)選框的方法,在AngularJS表單的基礎(chǔ)之上編寫起來非常簡單,需要的朋友可以參考下

AngularJS對表單的處理相當簡單。在AngularJS使用雙向數(shù)據(jù)綁定方式進行表單驗證的時候,實質(zhì)上它在幫我們進行表單處理。

使用復(fù)選框的的例子有很多,同時我們對它們的處理方式也有很多。這篇文章中我們將看一看把復(fù)選框和單選按鈕同數(shù)據(jù)變量綁定的方法和我們對它的處理辦法。

創(chuàng)建Angular表單

在這篇文章里,我們需要兩個文件:index.html和app.js。app.js用來保存所有的Angular代碼(它不大),而index.html是動作運行的地方。首先我們創(chuàng)建AngularJS文件。
 

// app.js
 
var formApp = angular.module('formApp', [])
 
  .controller('formController', function($scope) {
  
    // we will store our form data in this object
    $scope.formData = {};
     
  });

在這個文件里,我們所做的就是創(chuàng)建Angular應(yīng)用。其中我們還創(chuàng)建了一個控制器和一個用來保存所有表單數(shù)據(jù)的對象。

下面我們看看index.html文件,在這個文件里,我們創(chuàng)建了表單,然后進行了數(shù)據(jù)綁定。我們使用了Bootstrap快速地對頁面進行布局。
 

<-- index.html -->
<!DOCTYPE html>
<html>
<head>
 
  <!-- CSS -->
  <!-- load up bootstrap and add some spacing -->
  <link rel="stylesheet" >
  <style>
    body     { padding-top:50px; }
    form      { margin-bottom:50px; }
  </style>
 
  <!-- JS -->
  <!-- load up angular and our custom script -->
  <script src="http://code.angularjs.org/1.2.13/angular.js"></script>
  <script src="app.js"></script>
</head>
 
<!-- apply our angular app and controller -->
<body ng-app="formApp" ng-controller="formController">
<div class="col-xs-12 col-sm-10 col-sm-offset-1">
 
  <h2>Angular Checkboxes and Radio Buttons</h2>
 
  <form>
   
    <!-- NAME INPUT -->
    <div class="form-group">
      <label>Name</label>
      <input type="text" class="form-control" name="name" ng-model="formData.name">
    </div>
     
    <!-- =============================================== -->
    <!-- ALL OUR CHECKBOXES AND RADIO BOXES WILL GO HERE -->
    <!-- =============================================== -->
     
    <!-- SUBMIT BUTTON (DOESNT DO ANYTHING) -->
    <button type="submit" class="btn btn-danger btn-lg">Send Away!</button>
     
  </form>
   
  <!-- SHOW OFF OUR FORMDATA OBJECT -->
  <h2>Sample Form Object</h2>
  <pre>
    {{ formData }}
  </pre>
   
</div>
</body>
</html>

創(chuàng)建完成之后,我們就有了具有name輸入的表單了。如果一切都按照我們設(shè)想的運行,那么如果你在name輸入中鍵入內(nèi)容,那么你應(yīng)當可在下面的<pre>標簽段看到所輸入的內(nèi)容了.
 
復(fù)選框

在表單里,復(fù)選框非常普遍。下面我們將看看Angular是怎樣使用ngModel實現(xiàn)數(shù)據(jù)綁定的。如果有許多復(fù)選框,那么有時在把它綁定到對象的時候如何進行數(shù)據(jù)處理會讓人不知所措。

在我們創(chuàng)建的formData對象的內(nèi)部,我們還創(chuàng)建了另一個對象。我們把它稱為favoriteColors,它請求用戶選擇最喜歡的顏色:
 

<!-- MULTIPLE CHECKBOXES -->
<label>Favorite Colors</label>
<div class="form-group">
  <label class="checkbox-inline">
    <input type="checkbox" name="favoriteColors" ng-model="formData.favoriteColors.red"> Red
  </label>
  <label class="checkbox-inline">
    <input type="checkbox" name="favoriteColors" ng-model="formData.favoriteColors.blue"> Blue
  </label>
  <label class="checkbox-inline">
    <input type="checkbox" name="favoriteColors" ng-model="formData.favoriteColors.green"> Green
  </label>
</div>

當用戶點擊上面復(fù)選框中的任意一個時,他們立刻看到formData對象發(fā)生了變更。我們把復(fù)選框的值存儲到fromData.favoriteColors對象里。這樣我們就把復(fù)選框的值傳遞給了服務(wù)器了。

復(fù)選框點擊處理

有時候,當某人點擊了復(fù)選框后,你需要對其進行處理。你需要做的處理可能如下:計算某個值,更改某些變量或者進行數(shù)據(jù)綁定。要實現(xiàn)這些,你要使用$scope.yourFunction = function() {};在app.js內(nèi)創(chuàng)建函數(shù)。接著你就可以在的的復(fù)選框上使用ng-click="yourFunction()"來調(diào)用這個函數(shù)了。

處理表單復(fù)選框的方法有許多種,Angular提供了一個非常簡單的方法:使用ng-click調(diào)用用戶自定義的函數(shù)。

自定義復(fù)選框?qū)?yīng)的值

默認情況下,綁定到復(fù)選框上的值是ture或者false。有時候,我們希望返回的其它值。Angular提供了一種非常好的處理方式:使用ng-ture-value和ng-false-value。

我們添加另外一組復(fù)選框,不過這時侯我們使用的不再是true或者false,而是用戶自定義的值。
 

<!-- CUSTOM VALUE CHECKBOXES -->
<label>Personal Question</label>
<div class="checkbox">
  <label>
    <input type="checkbox" name="awesome" ng-model="formData.awesome" ng-true-value="ofCourse" ng-false-value="iWish">
    Are you awesome?
  </label>
</div>

另外,現(xiàn)在我們還在formData對象里增加了一個awesome變量。如果此時設(shè)置這個值為true,那么返回的值應(yīng)該是ofCourse,如果設(shè)置為false,那么返回的值為iWish。

復(fù)選框

依據(jù) 官方說明文檔, 這是和單選框不同之處:
 

<input type="radio"
  ng-model="string"
  value="string"
  [name="string"]
  [ng-change="string"]
  ng-value="string">

需要了解更多有關(guān)復(fù)選框的信息,請關(guān)注Angular 復(fù)選框說明文檔.
單選按鈕

單選按鈕比復(fù)選框容易些,就在于無需存儲多選項數(shù)據(jù). 單選就是一個值. 下面添加一個單選按鈕看看.
 

<!-- RADIO BUTTONS -->
<label>Chicken or the Egg?</label>
<div class="form-group">
  <div class="radio">
    <label>
      <input type="radio" name="chickenEgg" value="chicken" ng-model="formData.chickenEgg">
      Chicken
    </label>
  </div>
  <div class="radio">
    <label>
      <input type="radio" name="chickenEgg" value="egg" ng-model="formData.chickenEgg">
      Egg
    </label>
  </div>
</div>

就像這樣,單選按鈕就綁定到數(shù)據(jù)對象了.

單選按鈕用法

據(jù) 官方文檔, 這是提供的選項:
 

<input type="radio"
    ng-model="string"
    value="string"
    [name="string"]
    [ng-change="string"]
    ng-value="string">

相關(guān)文章

  • angular使用TweenMax動畫庫的問題和解決方法

    angular使用TweenMax動畫庫的問題和解決方法

    這篇文章主要給大家介紹了關(guān)于angular使用TweenMax的相關(guān)問題和解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 使用Angular CDK實現(xiàn)一個Service彈出Toast組件功能

    使用Angular CDK實現(xiàn)一個Service彈出Toast組件功能

    本文主要寫用cdk實現(xiàn)一個簡單的Toast組件,使用的是cdk中的overlay模塊,需要手動安裝環(huán)境,具體安裝方法及相關(guān)實現(xiàn)代碼跟隨小編一起看看吧
    2021-07-07
  • Angular 輸入框?qū)崿F(xiàn)自定義驗證功能

    Angular 輸入框?qū)崿F(xiàn)自定義驗證功能

    AngularJS 表單和控件可以驗證輸入的數(shù)據(jù)。本文給大家介紹Angular 輸入框?qū)崿F(xiàn)自定義驗證功能,非常不錯,具有參考借鑒價值,需要的朋友參考下
    2017-02-02
  • AngularJS 防止頁面閃爍的方法

    AngularJS 防止頁面閃爍的方法

    我們知道在應(yīng)用的頁面或者組件需要加載數(shù)據(jù)時,瀏覽器和angular渲染頁面都需要消耗一定的時間。這篇文章主要介紹了AngularJS 防止頁面閃爍的方法,需要的朋友可以參考下
    2017-03-03
  • 用angular實現(xiàn)多選按鈕的全選與反選實例代碼

    用angular實現(xiàn)多選按鈕的全選與反選實例代碼

    本篇文章主要介紹了用angular實現(xiàn)多選按鈕的全選與反選實例代碼,非常具有實用價值,需要的朋友可以參考下
    2017-05-05
  • angular或者js怎么確定選中ul中的哪幾個li

    angular或者js怎么確定選中ul中的哪幾個li

    下面小編就為大家?guī)硪黄猘ngular或者js怎么確定選中ul中的哪幾個li。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • angular中使用路由和$location切換視圖

    angular中使用路由和$location切換視圖

    這篇文章主要介紹了angular中使用路由和$location切換視圖,需要的朋友可以參考下
    2015-01-01
  • AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法

    AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法

    這篇文章主要介紹了AngularJS實現(xiàn)根據(jù)變量改變動態(tài)加載模板的方法,結(jié)合實例形式簡單分析了AngularJS動態(tài)加載模板的主要操作技巧與模板實現(xiàn)代碼,需要的朋友可以參考下
    2016-11-11
  • AngularJS 服務(wù)詳細講解及示例代碼

    AngularJS 服務(wù)詳細講解及示例代碼

    本文主要介紹AngularJS 服務(wù),這里整理了AngularJS 服務(wù)的基本知識資料,并附示例代碼和實現(xiàn)效果圖,有興趣的小伙伴可以參考下
    2016-08-08
  • 基于AngularJS前端云組件最佳實踐

    基于AngularJS前端云組件最佳實踐

    這篇文章主要為大家詳細介紹了基于AngularJS前端云組件最佳實踐,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10

最新評論

北辰区| 塔城市| 偃师市| 七台河市| 阿拉善右旗| 惠水县| 邵阳市| 榆中县| 张家港市| 大关县| 时尚| 六安市| 屏南县| 大荔县| 五台县| 历史| 长治县| 东城区| 台中市| 观塘区| 沽源县| 错那县| 海城市| 兰州市| 贡觉县| 永顺县| 汉川市| 密山市| 商南县| 巩义市| 北京市| 白水县| 霞浦县| 巍山| 汉中市| 青田县| 宜兰市| 兴山县| 龙岩市| 新龙县| 应用必备|