В моем веб-приложении пользователи могут нажать кнопку, чтобы увидеть свои любимые места. Под списком есть кнопка для ввода дополнительных избранных. Если у них есть любимые, все работает нормально, и я вижу список. Если я добавлю второй фаворит, кажется, что AJAX вообще не выполняется. Событие click работает, потому что я сделал console.log
вне ajax. Но мой список пуст!
Я тоже пытался $('#favoritePlaces').click(function(e){
, но тот же результат.
HTML и AJAX для просмотра избранного:
<div id="homeMenu" hidden="hidden">
<div class="pvBtn menuBtn" id="favoritePlaces">Favorite Places</div>
<div class="pvBtn menuBtn" id="recentPaths">Recent Paths</div>
</div>
<div id="favoritesWrapper" hidden="hidden"> </div>
<script>
var favoritesArray = [];
$(document).on('click', '#favoritePlaces', function(e){
$.ajax({
url: 'https://pppp/accesspathweb/getfavorites.php',
type: 'POST',
dataType:"json",
data: {
acctid: localStorage.getItem('uacctid')
},
success: function(data){
var favoritesString;
if(JSON.stringify(data).includes('gf001')){
$('#myFavs').prepend('<h2>Enter Your Favorite Places To Quickly Access Them Later</h2>');
} else{
favoritesString = null;
var s = 0;
for(var f in data){
if(favoritesString == null){
favoritesString = '<div class="favoritesList" id="favorites' + s + '">' + data.name + '</div>';
} else{
favoritesString = favoritesString + '<div class="favoritesList" id="favorites' + s + '">' + data.name + '</div>';
}
favoritesArray.push(data.address);
s++;
}
$('#favoritesWrapper').html(favoritesString); document.getElementById('navigationWrapper').setAttribute('hidden', 'hidden');
document.getElementById('favoritesWrapper').removeAttribute('hidden');
}
},
error: function(errmsg){
console.log(errmsg);
},
cache: false
});
document.getElementById('homeMenu').setAttribute('hidden', 'hidden');
//$('#myFavs').removeAttr('hidden');
document.getElementById('myFavs').removeAttribute('hidden');
});
</script>
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация. Спасибо!