如何模拟Zend \ Form提交而不在Zend Framework 2/3中显示表单?

问题描述 投票:1回答:1

我有一个复杂的嵌套(订单)Zend\Form,可以多次编辑。现在我想获取数据并稍后将其传递给新表单。 (这样我想实现一个简单的克隆机制。)

已经有效的是将请求数据转换为JSON

if ($request->isPost()) {
    ...
    if(isset($request->getPost()->toArray()['store'])) {
        $this->storeFormJson(json_encode($request->getPost()));
    }
    ...
}
...

并将其传递给空表:

if ($this->params()->fromQuery('populate')) {
    $formDataJson = $this->getFormDataJson();
    $formDataArray = json_decode($formDataJson, true);
    $parameters = new Parameters($formDataArray);
    $request->setPost($parameters);
    $request->setMethod(Request::METHOD_POST);
}

好的。但它要求用户需要先调用编辑表单,编辑它(如果需要),然后将数据发送到服务器(通过提交表单)。由于目标是动态创建克隆,我需要一种方法来模拟这些步骤。

如何获取通常通过表单提交传递的数据,而无需真正提交?

zend-framework2 zend-form zend-framework3 zend-form2
1个回答
0
投票

一种想法是创建一个新的表单F2,其中字段全部隐藏,使用填充表单F1中的值填充F2,将呈现的F2表单传递给客户端,并添加自动提交现在填充的客户端javascript页面加载时F2表格。只是大声思考......

© www.soinside.com 2019 - 2024. All rights reserved.