2017-06-17 975 views
0

我有一個想法,通過更改我的標籤來添加動態CSS樣式,並使item.areaNo更改時我的輸入元素顯示不同。我成功地給了我的標籤元素class='1',但css類不理解我的選擇器。我真的需要知道如何設置正確的。Css選擇器:如何選擇具有某個類名稱的元素

<ol class="cabin fuselage"> 
    <li class="row row--1"> 
     <ol class="seats" type="A"> 
      <li class="seat"><input type="checkbox" id="01-01" /> 
       <label for="01-01">01-01</label></li> 
      <li class="seat"><input type="checkbox" id="02-01" /> <label 
       for="02-01">02-01</label></li> 

這是我的JSP,

.seat label.1{background: #50bdc9;}

和我的CSS,

兩個參考https://codepen.io/siiron/pen/MYXZWg羅尼Siikaluoma

$.getJSON("gametransfer.controller", function(json) { 
     $.each(Object.values(json), function(i, item) { 
      console.log(item) 
      var aa = '#' + item.seatNo; 
      if ($('.seat>input').is(aa)) { 
       if (item.attr == true) { 
        $(aa).prop('disabled', true);            
       } 
       $(aa).siblings('label').addClass('1'); 
      }/*end of outer if */       
     }); 
    }); 

解決:所有這些努力都失敗了並返回所有的item.area否fir聖標籤元素。

回答

1

你需要找到沒有。的孩子(li.seat),那麼你可以使用循環,然後找到標籤一個接一個,併爲每個標籤放不同的CSS。我希望這是工作。

+0

謝謝!我試用了.siblings「$(aa).siblings('label')。addClass('1');」但它引發了另一個問題......我的CSS選擇器沒有拿起我的新班級ID,因爲我將它設置爲「.seat label.'1'」或「.seat label.1」,仍然嘗試這個。真的很感謝你的意見。 –