J'ai 2 sections.getJSON ne sera pas exécuté pour l'entrée
- La première section, je veux obtenir des commentaires de l'emplacement de l'utilisateur. C'est là que .getJSON ne s'exécute pas.
- La seconde section, je vérifie si la géolocalisation est compatible avec le navigateur, et si la permission est donnée, .getJSON s'exécute. Celui-ci fonctionne très bien.
Je ne pense pas if(navigator.geolocation)
vérifie si la permission a été accordée, seulement que la géolocalisation est compatible avec le navigateur.
Cette ligne de la section 1 $.getJSON(address, function(data)
ne s'exécute pas comme dans la section 2. Si je place `console.log (adresse) juste avant, cela apparaît, mais pas dans la portée .getJSON. Confondu quant à ce qui se passe puisque les fonctions sont identiques.
$(document).ready(function() {
//GET STUFF FUNCTION
function getStuff(address) {
api = address; //**EDIT** changed to address
console.log("clicking or entering works yes");
$.getJSON(api, function(data) {
console.log("yay it works");
});
};
// SECTION 1
$("#searchForm").submit(function(e) {
var searchInput = $("#searchInput").val();
var address = "api.openweathermap.org/data/2.5/weather?q=" + searchInput + "&appid=?";
e.preventDefault();
getStuff(address);
});
$("#searchInput").keypress(function(e) {
if (e.which == 13) {
$("#searchBtn").click();
};
});
//SECTION 2
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
lat = position.coords.latitude;
lon = position.coords.longitude;
var address = 'http://api.openweathermap.org/data/2.5/weather?lat=' + lat + '&lon=' + lon + '&appid=?';
//tried to use this function for search
getStuff(address);
});
J'ai essayé de réduire au minimum ce que je pouvais, je ne suis pas sûr de savoir comment faire des requêtes AJAX sur un violon. edit: mise à jour https://jsfiddle.net/mq10ps5c/10/
Merci à tous, et les critiques sont très appréciées
Pourquoi une URL a-t-elle http: // et l'autre pas? – epascarello
Merci Merci! C'était le problème, je suis totalement embarrassée, mais merci – Danny