我的代碼
$('.radio-box').click(function() {
$(this).parents('.container-radio-box').find('.select').removeClass('state-active');
}
和我想要得到它,這樣它會發現點擊.radio-box
元素,尋找它的包含元素下列位 - .container-radio-box
- 然後從其中的任何.select
元素中刪除活動狀態。
我有一種感覺,我可以用的東西沿着
$('.radio-box').not(this).each(function() {
行然而這是一個有點複雜,因爲有無數.container-radio-box
元素,他們都需要單獨對待。例如。只有.select
元素在被點擊的.radio-box
的包含div內才能被腳本修改。
有誰知道我該如何做到這一點?
編輯: 我修改我的腳本如下所示:
// radio-box
$('.radio-box').click(function() {
$(this).parents('.container-radio-box').find('.radio-box').removeClass('state-active');
var el = this;
$(this).parents('.container-radio-box')
.find('.select')
.filter(function(index){
return this != el;
})
.removeClass('state-active');
$(this).find('input').prop("checked", true);
$(this).addClass('state-active');
});
和也曾在這裏上傳頁面,所以你可以看到它是如何工作 - http://www.mattpealing.co.uk/_concept/brdcr/form/
我想得到它,以便左列中的.select
元素可以保持選中直到其中一個其他列被選中,在這種情況下,活動狀態將被刪除。
但似乎點擊左欄也從包含它裏面的.select
元素去掉活動狀態
看來布里米的答案是完美的,除非我們錯過了一些東西。如果它不起作用,請包括一些示例HTML,這將有助於很多! –