2012-04-08 16 views
0

私はこのような何かを使って動的なフィールドを追加する必要があります:http://bit.ly/AByQZb
しかし、問題は私がasp.netフォームでそれを行う方法を知らないので、コードの背後にこれらの新しいフィールドを見ることができます。
私はリピーターを使用することができ、ボタンのクリック方法でコードの背後にあると思っていましたが、私が望むフィールドを含む項目数を増減しました。そこには良いアイデアがありますか?ASP.NETフォームでjQueryを使用して動的フィールドを追加する方法は?

限り、フィールドは<form>タグ内に追加され、名前とIDは、他の要素と競合しない、彼らはまだポストバックデータの一部となりますので、あなたがあるべきなどの高度な

+0

asp.netコントロールはブラウザでhtmlコントロールと解釈され、コントロールを動的に作成する場合は.clone()メソッドを呼び出す必要があります –

+0

このメソッドを呼び出すのは大丈夫ですが、コードの後ろにフィールドを追加すると、これがここでの主な問題です。 – Dabbas

答えて

2

でありがとうRequest.Formコレクションを使用して値にアクセスできます。

のC#:

string dynamicValue = Request.Form["dynamicTextName"].ToString(); 

VB:

Dim dynamicValue as String = Request.Form("dynamicTextName").ToString() 

これらのフィールドは動的にクライアント側に追加されているので、彼らは通常持って定義ではない、サーバー側のコントロールでありますrunat="Server"マークアップの属性。したがって、コードビハインドに対応するオブジェクトが表示されず、さまざまなプロパティにアクセスできます。

IEの開発ツールまたはFirebugのFiddlerを使用して、動的値がフォームと共に送信されたことを検証できます。

+0

私はこのアプローチについて考えましたが、javascriptコードがあればコードビハインドで対応するオブジェクトを見ることができますか? – Dabbas

+0

"見る"ことで、私はあなたがそれらを参照するオブジェクトを持っていると思いますか?デザイナーにボタンコントロールをドラッグアンドドロップするときのように?これは、サーバーがすでに認識しているコントロールであり、実行時に動的に追加されるものではありません。それらを「見る」ための唯一の方法は、それらをデザイナーに加えることです。 – mgnoonan

+0

さて、私はそれについて考えて、あなたはUserControlとして行全体を追加し、UCコードの背後にいくつかのロジックを追加することができます... – mgnoonan

関連する問題