Tôi đã có một nút được dùng để xóa một câu hỏi:Tại sao trình xử lý ng-click được kích hoạt hai lần?
<a class="btn-small float-right" data-ng-click="deleteQuestion(question)">
<i data-ng-class="{true: 'icon-step-backward', false: 'icon-remove'}
[question.IsDeleted]"></i>
</a>
Đây là mã đằng sau nút:
$scope.deleteQuestion = function (data) {
if (data.IsDeleted) {
data.IsDeleted = false;
for (var i = 0; i < deletedQuestions.length; i++) {
if (deletedQuestions[i] == data) {
deletedQuestions.splice(i, 1);
}
}
} else {
data.IsDeleted = true;
if ($.inArray(data, deletedQuestions) === -1) {
deletedQuestions.push(data);
}
}
};
Bây giờ khi tôi bấm nút Tôi nhận thấy các chức năng đã bị sa thải hai lần. Lần đầu tiên nó xóa câu hỏi, lần thứ hai nó hoàn tác hành động đó.
Điều tôi muốn là một nút để xóa câu hỏi và khi bạn nhấp lại câu hỏi, nó sẽ hoàn tác tác vụ đó.
Tôi chỉ tự hỏi những gì tôi đã bỏ qua ...
EDIT Đây là một fiddle: http://jsfiddle.net/rquackenbush/AbWKs/
bạn có thể chia sẻ fiddle –
Có thay đổi nếu bạn thêm 'href =" # "' vào liên kết của mình không? (đó chỉ là một dự đoán hoang dã.) – TheHippo
Tôi chia sẻ một fiddle sao chép hành vi này – RQDQ