2

我有一个 6 x 8 网格,基本上是同名“tselect”下的单选按钮。当页面加载时,我希望他们所有人都运行一个类似于这个的命令

$(this).closest('div').addClass('highlight', 300);

基本上通过在顶部添加一个新的 div 类来更改最近 div 的背景颜色。我尝试做一个 for 循环来遍历所有这些,但是 jquery 命令没有执行。有任何想法吗?

编辑:添加代码...

<div id="sch_cal">
                <div id="sch_cal_column">
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">8:00am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">8:20am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">8:40am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">9:00am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">9:20am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">9:40am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">10:00am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                    <div id="sch_cal_row">
                        <div id="sch_cal_time"><p class="ctime">10:20am</p></div>
                        <div style="height: 100%"><input class="ctime" type="radio" name="tselect"/></div>
                    </div>
                </div>
4

2 回答 2

2

如果您需要突出显示最近的 div,也许您需要类似的东西:

$(this).closest('div').effect("highlight", {}, 300);

如果您想更改背景颜色,可以尝试:

$(this).closest('div').css( "background-color" , "red" )  

或者

$(this).closest('div').addClass('highlight');

addClass不将第二个参数作为整数。

于 2012-07-02T23:39:59.740 回答
1

它应该是

$('input[type="radio"].ctime').closest('div').addClass('highlight');

演示。

您有多个具有相同 id 的元素,sch_cal_rowsch_cal_time是无效的,id 应该是唯一的。

于 2012-07-02T23:35:23.657 回答