Handsontable 最大。使用 AJAX 发布的行
Posted
技术标签:
【中文标题】Handsontable 最大。使用 AJAX 发布的行【英文标题】:Handsontable max. rows to post with AJAX 【发布时间】:2014-12-25 12:47:45 【问题描述】:我使用 Handontable 和 AJAX 将整个表作为 JSON 发布到 php 脚本,该脚本将数据保存在数据库中。效果很好!
但是最大行数是 334。如果我尝试添加更多行,它将在第 334 行停止。如果我计算 JSON 对象中的行数,它会给我正确的数字,但如果我计算服务器端的行数在 $_POST 变量中它给了我 334。
var data = "data":$('#spreadsheet').handsontable('getData');
alert(data.data.length);
返回正确的数字。
Log::info(count(Input::get('data')));
服务器端返回最大值。 334.
Firebug 说:已达到帖子响应的大小限制。
但是,如果我在表中添加更多列,则限制仍然是 334。所以它不是以字节为单位的大小,而是更准确地说是行数。
还有线索发生了什么以及如何解决它?
【问题讨论】:
您的 334 行表有多少列? PHP 中的 max_input_vars 配置是什么? 【参考方案1】:试试这个:
Javascript:
var _data = handsontable.getData();
$.ajax(
data: "data":JSON.stringify(_data),
.
.
.
);
PHP:
$data=isset($_POST['data'])?$_POST['data']:"";
$temp_data = str_replace('\\', "",$data);
$data=json_decode($data,true);
vardump($data);
【讨论】:
【参考方案2】:增加服务器 php.ini 文件中的 max_input_vars。
我遇到了同样的问题。
【讨论】:
以上是关于Handsontable 最大。使用 AJAX 发布的行的主要内容,如果未能解决你的问题,请参考以下文章
计算不适用于 Handsontable 中使用 AJAX 的自定义单元格渲染
从启用 AJAX 的 WCF 服务加载 Handsontable