2015-01-08 40 views
0
<table> 
<tr class="slots"> 
    <td data-col="1" js-select> 
     <input class="time" type="radio"/> 1 
    </td> 
    <td data-col="2" js-select> 
     <input class="time" type="radio"/> 2 
    </td> 
    <td data-col="3" js-select> 
     <input class="time" type="radio"/> 3 
    </td> 
    <td data-col="4" js-select> 
     <input class="time" type="radio"/> 4 
    </td> 

</tr> 

突出顯示特定的細胞背景顏色和特定的無線電設置爲檢查真正

var selected = $('[js-select]') 
$(selected).click(function(e){ 
    console.log('clicked') 
    // $(this).parents().siblings('.timing').attr('checked', true) 
    $(this).closest('input:radio').attr('checked', true) 
}) 

JSfiddle demo

當點擊TD手機本身,它應該設置特定的無線這是在相同的TD手機檢查爲真。這樣,它會將整列激活以突出顯示爲背景顏色。 我試過父母,兄弟姐妹,最近但它設置所有的無線電在本地機器上檢查爲真。

幫助讚賞。

+0

我不完全知道是什麼你正在嘗試做,但重要的是要注意['closest()'](http://api.jquery.com/closest/)通過元素的祖先*; ['find()'](http://api.jquery.com/find/)查看後代。 –

回答

1
  1. 輸入在td之下,因此您需要使用find
  2. 使用prop的複選框(不attr
  3. 您需要爲單選按鈕組共同name=屬性共同努力

的jsfiddle:http://jsfiddle.net/TrueBlueAussie/pukz2sca/3/

var selected = $('[js-select]') 
$(selected).click(function(e){ 
    console.log('clicked') 
    // $(this).parents().siblings('.timing').attr('checked', true) 
    $(this).find('input:radio').prop('checked', true) 
}) 
+0

謝謝,但在你的小提琴,所有的收音機設置爲檢查。這是不正確的,因爲我提到。點擊時應該只有一個收音機被選中。 – joe

+0

@Joe:哦。你只是缺少一個'name ='。這就是單選按鈕如何知道其他人連接到它。已更新JSFiddle並回答修復,也太:) –

+0

啊,難怪。謝謝! :) – joe

相關問題