2017-12-14 4 views
0

복잡한 중첩 된 (주문) Zend\Form을 여러 번 편집 할 수 있습니다. 이제 데이터를 가져 와서 나중에 새 양식으로 전달하려고합니다. (이 방법은 내가 간단한 복제 메커니즘을 구현하고자합니다.) 이미 작동 무엇젠드 프레임 워크 2/3에서 폼을 표시하지 않고 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); 
} 

좋아 . 그러나 사용자는 편집 양식을 먼저 호출하고 편집 한 다음 (필요한 경우) 편집 한 후 양식을 제출하여 서버에 데이터를 보내야합니다. 목표는 즉시 복제본을 만드는 것이므로이 단계를 시뮬레이트하는 방법이 필요합니다.

데이터를받는 방법은 일반적으로 양식 제출을 통해 전달되며 실제 제출하지 않아도됩니까?

답변

0

필드가 모두 숨겨져있는 F2를 새로 작성하고 채워진 양식 F1의 값으로 F2를 채우고 렌더링 된 F2 양식을 클라이언트에 전달한 다음 클라이언트 측 javascript를 추가합니다. 페이지로드시 현재 채워진 F2 양식을 제출합니다. 큰 소리로 생각하고 ...