Πως να ελέγξω όταν έχουν φορτωθεί data μέσω ajax να μην καλέσω το ajax ξανά?

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
sibas
Honorary Member
Δημοσιεύσεις: 1853
Εγγραφή: 21 Φεβ 2003 01:21
Τοποθεσία: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
Επικοινωνία:

Πως να ελέγξω όταν έχουν φορτωθεί data μέσω ajax να μην καλέσω το ajax ξανά?

Δημοσίευση από sibas » 25 Ιούλ 2016 14:26

θέλω μόλις φορτωθούν τα data να μη ξανακαλέσω το ajax

πχ

Κώδικας: Επιλογή όλων

$(document).on('click', '.button', function(){
var data= $(this).attr('data-example');
	$.ajax({
	type: 'POST',
	url: 'example.php',
	data:'data='+data,
		success:function(e){
		$('#display').html(e);
		}
	})
});
με το που κάνεις click στο button εμφανίζονται τα data από το example.php στο #display
όταν ξανακάνεις click ξανα ματά το ίδιο, ξανα καλείς το example.php

το σκέφτηκα κάπως έτσι αλλά δεν λειτουργεί

Κώδικας: Επιλογή όλων

msg = 0;
$('#display').hide();

$(document).on('click', '.button', function(msg){
var data= $(this).attr('data-example');

if (msg == 1){
$('#display').show();
}else{
	$.ajax({
	type: 'POST',
	url: 'example.php',
	data:'data='+data,
		success:function(e, msg){
      msg = 1;
		$('#display').show().html(e);
		}
	})
}
});
κάποια ιδέα?


sibas
Honorary Member
Δημοσιεύσεις: 1853
Εγγραφή: 21 Φεβ 2003 01:21
Τοποθεσία: Μια εδώ.. Μια εκεί.. Σήμερα είμαι εδώ!!!
Επικοινωνία:

Πως να ελέγξω όταν έχουν φορτωθεί data μέσω ajax να μην καλέσω το ajax ξανά?

Δημοσίευση από sibas » 25 Ιούλ 2016 15:27

το έλυσα με το length
οταν φορτώνει στο #display έχει αμέσως μετά ένα άλλο div id "data1" (κάθε ένα που καλώ έχει και διαφορετικό ID)
έτσι απλά ελέγχω αν το #display #data1 έχει length
αν έχει απλά το εμφανίζω, αν όχι καλώ το ajax

Thanks :D

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες