2011-10-20 5 views
2

ここには数字を含むテキストフィールドがあるフォームがあります。フォームの別の部分には行があり、入力された番号と対応しています。たとえば、2 = 2行など 私の考えは、JavaScriptによって複製される1つの行を作成することです。だから私はname = "input []"のような配列にあるinput要素を作成しなければなりませんZend Frameworkでこれを行うにはどうすればいいですか?Zend javascriptで動的行番号をフォーム

この種類の問題で見つかった唯一のアプローチは、サブフォームを使用することです。しかし、すべてのサブフォームは配列ではない明示的な名前を持っています。

答えて

0

レンダリングをクライアント側の変更に対応させるには - 例のように、ユーザーが必要な行数を入力できるようにするには、クライアント側とサーバー側の両方の処理が必要です。

一般的な考えを実証する最良の例では、ジェレミー・ケンドールからです:

jeremykendall.net » Blog Archive » Dynamically Adding Elements to Zend_Form

結論はあなたがトラックにフィールドの数と、その後注入preValidation()メソッドを追加し、クライアント側のコードを持っているということですisValid()が呼び出される前に、$formインスタンスに適切な数のフィールドを追加します。

【がコメントで述べたように、コントローラは、変化しないままであるように、このpreValidation()処理がちょうどisValid()にバンドルすることができた。]

関連する問題