ajaxでphpの配列を渡したいのですがうまく行かず困っています。
とりあえず処理はせずに受け取った配列をそのまま返して表示することを
目指しているのですが、class=btnのテキストが
[object Object]
となります。
コンソールで見たり、json_decodeしたり、ログ出力してみましたが、
どうしても中身を見ることができませんでした。
どうすればよいでしょうか?
JavaScript
1<html> 2・ 3・ 4・ 5</html> 6<script> 7document.addEventListener('DOMContentLoaded', function(){ 8 document.getElementById('btn').addEventListener('click', function(){ 9 var btn = document.getElementById('btn'); 10 var data = <?php echo json_encode($ajax); ?>; 11 var xhr = new XMLHttpRequest(); 12 xhr.addEventListener('loadstart', function(){ 13 btn.textContent = 'loading...'; 14 }, false); 15 xhr.addEventListener('load', function(){ 16 btn.textContent = xhr.responseText; 17 }, false); 18 xhr.addEventListener('error', function(){ 19 btn.textContent = 'error'; 20 }, false); 21 xhr.open('POST', 'ajax.php', true); 22 xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); 23 xhr.send('data=' + encodeURIComponent(data)); 24 }, false); 25 }, false); 26</script> 27 28$ajaxは 29$ajax = array('a'=>'1', 'b'=>'2', 'c'=>'3'); 30のような連想配列
PHP
1<?php 2$data = $_POST['data']; 3echo $data;
回答2件
あなたの回答
tips
プレビュー