jQueryでAjax方式を学んでいます。ここに簡単なコードがあります。jQuery Ajaxメソッドでcsvファイルからデータを読み込み、それを配列に入れてさらに利用するというものです。しかし、最初に配列をグローバルにしても、Ajax関数の外で配列が失われたようです。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="js/jquery/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
var db=[];
$(document).ready(function(){
$.ajax({
url: 'loaddata.php',
success: function(data){
var arr = data.split('|');
for(var i=0; i<arr.length; i++){
var miniArr = arr[i].split(',');
db.push(miniArr);
}
printTest(); //work here
}
});
printTest(); //not working and collapse here
});
function printTest(){
document.getElementById('test').innerHTML += db;
}
</script>
</head>
<body>
<div id="test" />
</body>
</html> `
私のphpファイルは問題ないはずです、
<?php
$database = file('database');
foreach($database as $item){
if ($item===end($database))
echo $item;
else
echo $item.'|';
}
?>
前もって感謝します。