检查下面的代码
当我第一次点击span
时,会触发markStarted
功能,fa
图标和data-aevent
会成功更新。我在开发控制台中获得started
。
当我再次点击(没有页面重新加载)时, markFinished
未被触发。我仍然在控制台中“开始”。
我做错了什么?
<span class="label label-info check " data-id="4" data-aevent="finish"><i class="fa fa-check fa-fw"></i></span>
markStarted,markFinished
var markStarted = function(task){
task.find('i').removeClass('fa-play').addClass('fa-check');
var nextstate = "finish";
task.data("data-aevent", nextstate);
console.log("started");
}
var markFinished = function(task){
task.fadeOut();
console.log("finished");
}
点击功能
$(function() {
$(".check").on("click", function() {
var task = $(this);
var task_id = task.data("id")
var aevent = task.data("aevent");
if (aevent == "start"){
markStarted(task);
}else {
markFinished(task);
}
});
});
答案 0 :(得分:1)
markStarted
中,您正在呼叫task.data("data-aevent ...
,您需要拨打task.data("aevent" ...