サーバー側に存在する配列を使用して Javascript で Handsontable を作成したいと思います。配列には 1 つの列があります。
$table[] = "a";
$table[] = "b";
Handsontable にロードするには、次のように変換する必要があります。
var input = [["a"],["b"]];
$("#myTable").handsontable({
data: input,
startRows: 1,
startCols: 1
};
PHP では、JSON を使用して最初にエンコードしています。
<?php echo json_encode($table); ?>
次に getJSON または別の ajax 関数を使用してクライアント側でこの形式で取得しますが、正しい方法が見つかりません。誰かが助けてくれることを願っています。
投稿するには、1)隠しフィールドを使用して投稿してみました
<input type="hidden" name="input_field" value=<?php echo json_encode($table); ?> >
そして、次のようにして Ajax 部分に入ります。
var input = $('#input_field').val();
alert(input);
しかし、アラートは未定義を返し、配列 {a,b} は Handsontable にロードされません。2) または、$.getJSON を使用しようとしています。PHP の場合:
$table = array();
$table[] = array("a");
$table[] = array("b");
echo json_encode($table);
アヤックスの場合:
jQuery.getJSON('mypage.php',function(table){
alert(!);
});
アラートはトリガーされず、Handsontable が表示されないため、Ajax コードにエラーがあると思います。ありがとう。