angular.js - angular ng-repeat menukar warna latar belakang sesuatu
为情所困
为情所困 2017-05-15 16:58:27
0
4
807


Seperti yang ditunjukkan dalam gambar, 5 blok di atas adalah output dalam gelung menggunakan ng-repeat Bagaimana untuk menyedari bahawa apabila blok tertentu (seperti blok 2). diklik, latar belakang blok Warna berubah kepada merah? Warna blok lain kekal tidak berubah.
Terima kasih atas nasihat.

为情所困
为情所困

membalas semua(4)
大家讲道理

Terlalu banyak kaedah, ng-click, ng-class, arahan boleh dilaksanakan
Ini adalah kaedah langsung, untuk rujukan sahaja
html:

<p>
    <span ng-class="{'selected':selected==s}" ng-repeat="s in list" ng-bind="s" ng-click="changeStatus(s)"></span>
</p>

js

$scope.list = [1,2,3,4,5];
$scope.changeStatus = function(index){
    $scope.selected = index;
}
黄舟

Tambah acara klik. Lulus $index dan $event bagi gelung semasa. Maka tidak mengapa untuk mengendalikannya sendiri melalui jq sudut.

phpcn_u1582

Beri anda kod siap sedia:
HTML

<p class='options'>
    <span class='option' ng-class="{'selected':s._selected}" ng-repeat="s in orderStatus" ng-bind="s.l" ng-click="clickStatus(s)"></span>
</p>

JS

$scope.clickStatus = function(prop) {
    prop._selected = !prop._selected;
};

CSS

.option{display:inline-block;border:1px solid green;padding:.25em;margin:.5em .5em 0 0;}
.option.selected{background:green;color:white;}

Saya bercadang untuk menulis arahan untuk melakukan ini

世界只因有你

http://runjs.cn/detail/yfnwk6ho

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan