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 :

Nom : result_not_defined.png
Affichages : 121
Taille : 16,8 Ko

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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