我有一个表,里面有一些行和列,一些单元格里面有div元素。我想在我单击的一行中更改div类。此外,当我再次单击该行或单击另一行时,我需要删除这个类。我尝试创建jQuery
脚本,但没有成功。一旦我更改表中的每个div,第二次尝试不做任何事情。我对jquery的最后一个“错误”版本是:
jQuery(document).on("click", "tr.line > td", function () {
var $this = jQuery(this);
if jQuery.find("div").hasClass('zna')) {
jQuery.find("div").removeClass("zna");
}
else {
jQuery.find("div").removeClass("zna");
jQuery.find("div").addClass("zna");
}
});
有人能帮上忙吗?
发布于 2018-07-08 08:54:41
我不知道你到底是什么意思,但这也许能帮到你
jQuery(document).ready(function() {
$("section").on("click", function() { //example click handler
if ( $(this).find("div").hasClass("zna") ) {
$("div").toggleClass("zna");
} else {
$("div").toggleClass("zna");
}
});
});
section {
width:75px
height:50px;
padding:5px;
border:1px solid;
cursor:pointer;
}
.test {
width:50px;
height:50px;
background:green;
display:inline-block;
}
.test.zna {
background:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<section>click me
<div class="test"></div>
<div class="test"></div>
<div class="test zna"></div>
<div class="test"></div>
</section>
发布于 2018-07-08 08:09:32
我认为我们可能需要从您的表中查看您的标记,但乍一看,您的if计算缺少一个左括号……可能还有其他问题,但这只是我的第一个想法。if语句需要对求值参数使用open和closed ()。
jQuery(document).on("click", "tr.line > td", function () {
var $this = jQuery(this);
if (jQuery.find("div").hasClass('zna')) {
jQuery.find("div").removeClass("zna");
}
else {
jQuery.find("div").removeClass("zna");
jQuery.find("div").addClass("zna");
}
https://stackoverflow.com/questions/51227795
复制相似问题