2016-04-14 8 views
3

ben bir liste var bir listede seçili öğeden öznitelik değeri alın: Seçilen li danBir MVC uygulamasında

<ul> 
<li class="list-item" data-action="open" data-id="1"><form>...A..<form/></li> 
<li class="list-item" data-action="open" data-id="2"><form>...B..<form/></li> 
<li class="list-item" data-action="open" data-id="3"><form>...C..<form/></li> 
</ul> 

nasıl alabilirim veri id özelliği?

jQuery bu kodu denedim:

this.$list = this.find("ul").first(); 
    this.$list.on("click", "[data-action=\"open\"]", function (e) { 

     var x = e.currentTarget.parentElement;//it brings me all the li elements , not just the one that was selected 
     var elem=x.data('id'); 
    }); 

cevap

3

bu deneyin: Sen ul altında li s için tıklatma olay işleyicisi kayıt yaptırdı. Dolayısıyla, sadece yerine kendi üst elemanı yani e.currentTarget.parentElement;

Not onu okuma tıklandığında li ait data-id almak için $(this).data('id') okuyun: - Ben referansı yok gibi ben aşağıda benim kodunda this kaldırdık.

var $list = $(document).find("ul").first(); 
 
$list.on("click", "li[data-action=\"open\"]", function (e) { 
 
    var elemId =$(this).data('id'); 
 
    alert(elemId); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
<li class="list-item" data-action="open" data-id="1"><form>...A..<form/></li> 
 
<li class="list-item" data-action="open" data-id="2"><form>...B..<form/></li> 
 
<li class="list-item" data-action="open" data-id="3"><form>...C..<form/></li> 
 
</ul>