Javascript 单击按钮并在jquery中检测其状态
我有一个Javascript 单击按钮并在jquery中检测其状态,javascript,jquery,Javascript,Jquery,我有一个按钮,如下所示: <a class="btn btn-sm btn-danger employee" data-emp_id="23" href="javascript:void(0)" disabled>Resign</a> $(document).on('click', 'a.employee:not(:disabled)', function(e){ var empID = $(this).data('emp_id'); alert('here'
按钮
,如下所示:
<a class="btn btn-sm btn-danger employee" data-emp_id="23" href="javascript:void(0)" disabled>Resign</a>
$(document).on('click', 'a.employee:not(:disabled)', function(e){
var empID = $(this).data('emp_id');
alert('here');
});
我也试过这样的方法:
<a class="btn btn-sm btn-danger employee" data-emp_id="23" href="javascript:void(0)" disabled>Resign</a>
$(document).on('click', 'a.employee:not(:disabled)', function(e){
var empID = $(this).data('emp_id');
alert('here');
});
但是,这两个都不是为我工作。。
希望有人能帮助我。
谢谢。已禁用,因此不是锚定标记的属性
这样试试
$(document).on('click', 'a.employee[disabled])', function(e){
var empID = $(this).data('emp_id');
alert('here');
});
您不能禁用锚元素,向其添加
disabled
属性将意味着您的HTML无效
要解决这个问题,您可以简单地向元素添加一个类,并在该元素上键入click行为。试试这个:
$(文档)。在('click','a.employee',函数(e){
e、 预防默认值();
var empID=$(this).data('emp_id');
if($(this).hasClass('disabled')){
console.log('message1');
}否则{
console.log('message2');
}
});代码>
。已禁用{
颜色:#CCC;
}
谢谢您的回答。你能告诉我在a
标记的href
属性中使用javascript:0
有什么问题吗?它很难看,过时,而且没有很好的关注点分离。如果在JS代码中放置preventDefault()
,那么所有的JS都在一个地方,而不是分散在整个项目中