ich diese Funktion hatte ursprünglich ein Element zu entfernen, wenn die delete-item
Schaltfläche geklickt wird:
$(document).on("click", ".delete-item", function() {
console.log("Removing "+$(this).data('id'));
var id=$(this).data('id');
var parent=$(this).parent().parent().parent();
parent.remove();
$(".subitem-row"+id).remove();
applyCartChanges();
});
Es funktioniert gut. Aber wenn ich versuche, einen Dialog zu tun (mit OnsenUI und PhoneGap) es zu bestätigen, bevor entfernen, wie folgt aus:
$(document).on("click", ".delete-item", function() {
ons.notification.confirm({
message: getTrans('Remove from cart?','remove_from_cart') ,
title: dialog_title_default ,
buttonLabels: [ getTrans('Yes','yes') , getTrans('No','no') ],
animation: 'default', // or 'none'
primaryButtonIndex: 1,
cancelable: true,
callback: function(index) {
if (index==0){
console.log("Removing "+$(this).data('id'));
var id=$(this).data('id');
var parent=$(this).parent().parent().parent();
parent.remove();
$(".subitem-row"+id).remove();
applyCartChanges();
}
}
});
});
Dann plötzlich ist es nicht mehr funktioniert :(In der Konsole, heißt es undefined
für die Irgendwelche Ideen $(this).data('id')
. warum?
Zeigen Sie uns Ihren HTML-Code. schwer für uns, um den Fehler ohne –
zu zeigen versuchen Sie mit '$ (this) .attr ('Daten-ID')' – prasanth
Sie fehlen den Verweis auf diese "innerhalb der Callback-Funktion. Überprüfen Sie die Antwort –