angular.js - Bagaimana untuk mendapatkan kandungan dalam tag span selepas mengklik tag span dalam angularjs?
过去多啦不再A梦
过去多啦不再A梦 2017-05-15 16:55:27
0
5
715

Terdapat banyak penerangan tentang hobi di sini Setiap penerangan diletakkan dalam teg span saya tambahkan ng-click='getHobby()' pada setiap teg span dapatkan penerangan dalam teg span yang sepadan dengan klik?

Kaedah saya: Apabila saya mengikat fungsi getHobby(), saya menambah penerangan dalam teg sebagai parameter dalam fungsi, seperti getHobby("Bookworm" Ini juga mungkin, tetapi ia tidak cukup elegan. , dan menambahkan banyak kod pada html, saya ingin mendengar penyelesaian anda

过去多啦不再A梦
过去多啦不再A梦

membalas semua(5)
大家讲道理
app.controller('TagCtrl',function($scope){
   $scope.tags=[{name:'书虫',code:'xx'},{name:'互联网',code:'yy'}];
   $scope.onSelect=function(tag){
     $scope.selectedTag=tag;
     console.log(tag.name)//tag.code......
   }
});

<ul ng-controller='TagCtrl'>
    <li ng-repeat="tag in tags">
        <span ng-click="onSelect(tag)">{{tag.name}}</span>
    </li>
</ul>

Pelbagai teg hendaklah data dikawal oleh pengawal melalui skop mesti sentiasa mengingati data sedia ada, dan kemudian memaparkan antara muka berdasarkan data Operasi antara muka dikembalikan kepada pengawal melalui peristiwa untuk diproses.

Jika anda menjana senarai teg pada halaman melalui kaedah lain, seperti

<span ng-click="getHobby('Bookworm')">Bookworm</span>
<span ng.....>Internet</span>

Ini bukan cara yang betul untuk menggunakan sudut.


Jika anda baru mula menggunakan Angular, untuk mengelakkan pemikiran asal anda daripada menjejaskan penggunaan Angular anda, sila ingat peraturan yang mungkin terlalu mutlak:

1 Anda tidak boleh melakukan sebarang operasi berkaitan DOM dalam pengawal
2 Sebarang operasi berkaitan DOM harus diletakkan dalam arahan

曾经蜡笔没有小新

Poster asal menggunakan idea jquery untuk membuat sudut Saya tertanya-tanya jika sudut mempunyai pengikatan data dua hala?
Cadangan kepada poster: Kelebihan sudut ialah ia membenarkan anda tidak lagi mengendalikan DOM Apabila anda menggunakan sudut tetapi mengendalikan DOM, fikirkan sama ada terdapat cara lain.

漂亮男人

Saya tidak faham apa yang dilakukan oleh penyoal, pelaksanaan jQuery sangat mudah

// 绑定 p 下面所有span标签的click事件
$("p span").on('click', function(){
  // 获得span的text
  var text = $(this).text();
});  

17:07 Pengubahsuaian
Sila rujuk perkara berikut:

<p ng-controller="MyController" >
    <p ng-click="myData.doClick()">Click here</p>
</p>

<script>
    angular.module("myapp", [])
            .controller("MyController", function($scope) {
                $scope.myData = {};
                $scope.myData.doClick = function() {
                    alert("clicked");
                }
            } );
</script>

PS: Terdapat buku yang disyorkan di bawah halaman utama jQuery
Rujuk Jquery .on()
AngularJS Events

给我你的怀抱

Adakah cukup untuk menghantar elemen semasa kepada ngclick semasa gelung ng?

伊谢尔伦

Tulis sahaja arahan. .
Ikat acara klik dalam fungsi pautan arahan. .

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