我正在使用<a>
正在使用的hide()
属性但disable
可以让任何人告诉我原因。{/ p>
$("#1").click(function() {
if (!$(".id_" + event.target.id).hasClass('minus-symbol')) {
alert('data')
var id = event.target.id
$(".id_" + event.target.id).removeClass('plus-symbol').addClass('minus-symbol')
//$(".id_"+event.target.id).hide(); // hide is working
$(".id_" + id).attr('disabled', true); // disable is not working
} else {
alert('data1')
$(".id_" + event.target.id).addClass('plus-symbol').removeClass('minus-symbol')
}
});
.plus-symbol {
background-image: url('../plus-sym.gif');
background-repeat: no-repeat;
background-position: center;
padding-left: 7px;
}
.minus-symbol {
background-image: url('../minus-symbol.gif');
background-repeat: no-repeat;
background-position: center;
padding-left: 7px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class='plus-symbol id_1' id="1">data</a>
不改变<a>
属性的解决方案。
答案 0 :(得分:0)
与评论中提到的人一样,disabled
属性仅适用于表单元素。您可以使用全局布尔变量(例如clickable
)禁用单击,然后您可以控制从中单击:
var clickable=true;
$("#disable-click").click(function(){
clickable=false;
});
$("#enable-click").click(function(){
clickable=true;
});
$("#1").click(function(){
if (clickable){
if(!$(".id_"+event.target.id).hasClass('minus-symbol')){
alert('data')
var id = event.target.id
$(".id_"+event.target.id).removeClass('plus-symbol').addClass('minus-symbol')
//$(".id_"+event.target.id).hide(); // hide is working
}else{
alert('data1')
$(".id_"+event.target.id).addClass('plus-symbol').removeClass('minus-symbol')
}
}
});
&#13;
.plus-symbol {
background-image: url('../plus-sym.gif');
background-repeat: no-repeat;
background-position: center;
padding-left: 7px;
}
.minus-symbol {
background-image: url('../minus-symbol.gif');
background-repeat: no-repeat;
background-position: center;
padding-left: 7px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class='plus-symbol id_1' id="1">data</a><br><br>
<button type="button" id='disable-click'>Disable Click</a>
<button type="button" id='enable-click'>Enable Click</a>
&#13;
答案 1 :(得分:0)
disabled
行为与JavaScript无关。它仍然是可点击的。您可以尝试从id
中移除<a>
,以便它不会再触发任何JS事件。喜欢的东西;
removeAttr("id")
试一试。
另外,试试;
$("#1").click(function(){
if(!$(this).hasClass('minus-symbol')){
alert('data');
$(this).removeClass('plus-symbol').addClass('minus-symbol').attr('disabled','true').hide();
}else{
alert('data1');
$(this).addClass('plus-symbol').removeClass('minus-symbol');
}
});