1 pièce(s) jointe(s)
Utiliser une variable dans 2 fonctions ajax successives
Bonjour à tous,
Dans mon script j'ai 2 fonctions ajax, la première récupère des données CSV et les converti en objet l'autre est sensée récupérer cet objet et l'envoyer à une URL ,
L'objet en question est stocké dans une variable "result" que je retourne dans la première fonction et que j'aimerais réutiliser dans la seconde,
On me renvoie cette erreur quand je lance le script sur le navigateur :
Pièce jointe 536588
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
<!DOCTYPE html>
<meta charset="utf-8"/>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$.ajax({
url:"TEST_2.csv",
dataType:"text",
success:function(data)
{
var lines=data.split("\n");
var result = [];
// NOTE: If your columns contain commas in their values, you'll need
// to deal with those before doing the next step
// (you might convert them to &&& or something, then covert them back later)
// jsfiddle showing the issue https://jsfiddle.net/
for(var i=0;i<lines.length;i++){
var obj = {};
var currentline=lines[i].split(",");
for(var j=0;j<currentline.length;j++){
obj=currentline[j];
}
result.push(obj);
}
//return result; //JavaScript object
return result;
}
});
// Définition des paramètres et des entêtes de la requête avec l'identifiant de la liste dans l'URL
var listId = 261291
settings = {
"async": true,
"crossDomain": true,
"url": 'https://www.kizeoforms.com/rest/v3/lists/'+listId,
"method": 'PUT',
"headers": {
'content-type': 'application/json',
Authorization: '******',
},
// Ajout des données dans le corps de la requête
processData: false,
data: result,
}
$.ajax(settings).done(function(response) {
console.log(response)
})
});
</script>
</html> |
Je débute en Ajax donc c'est possible que je fasse absolument n'importe quoi mais je n'ai rien trouvé qui corresponde à mon cas précis,
Merci :)