我想使用服务器端存在的数组在 Javascript 中创建一个 Handsontable。该数组有一列:
$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(!);
});
警报没有被触发,我认为 Ajax 代码有错误,因为 Handsontable 没有显示。谢谢。