Je suis en train d'utiliser le plug-in "CSV" jQuery, comme l'indique ici: http://code.google.com/p/js-tables/wiki/CSVplugin jQuery CSV lignes non divisé en tableaux-de-tableaux
Selon la documentation:
// Convert CSV data into array of arrays
jQuery.csv()("1,2,3\n4,5,6\n7,8,9\n"); // = [ [1,2,3], [4,5,6], [7,8,9] ]
Mais quand j'essaye de faire quelque chose de similaire, il semble juste traiter le "\ n" comme un autre caractère au milieu d'un élément de tableau.
Qu'est-ce que je fais mal? J'utilise jQuery 1.4.2 et Firefox 3.5.10 pour les tests. J'ai aussi essayé avec jQuery 1.3 et obtenu le même résultat.
Si c'est un problème avec le plugin, alors quelqu'un peut-il suggérer un autre plugin pour lire CSV? Mon but ultime est de convertir CSV d'une chaîne en une table HTML; le seul plugin que je peux trouver qui spécifiquement cela nécessite le CSV à venir d'un fichier, ce qui n'est pas souhaitable pour ma tâche.
Voici une page de test minimal que je mets ensemble, ce qui montre que ce n'est pas séparer les lignes en sous-réseaux:
<html>
<head>
<title>CSVtest</title>
<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery.csv.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var lines = $.csv()("a,b\nc,d");
alert(lines[0][1]); // Displays: b
// c instead of the expected b
});
</script>
</head>
<body>
</body>
</html>
Assurez-vous d'utiliser des guillemets doubles et non simples, qui ne reconnaissent pas les nouvelles lignes. –
@Steven Xu, ce n'est pas le cas des chaînes JavaScript. Mis à part l'évidence, il n'y a aucune différence entre '" 'et' ''. –