私はこれらの8つのテキストボックスを持っていますが、私のページでは非常に乱雑だと思っています。ですから、ユーザーがクリックするとテキストボックスを追加できるボタンを実装する方法を考えています。誰でも私を助けるアイデアや解決策を持っていますか?私はそれを感謝します。ありがとうございました。テキストボックスを自動的に追加する方法
答えて
あなたはjqueryのを使用して考えると、物事は非常に単純なことができます:今
<div id="text_box_container"> </div>
<input type="button" value="text box inserter" id="text_box_inserter" />
のjavascript/jqueryの一部
$('#text_box_inserter').click(function(){
$('#text_box_container').append('<input type="text" />');
})
これは、テキストボックスを作成し、id="divFirstName"
でdiv
に追加します。 div
は
TextBox tbFirstName = new TextBox();
tbFirstName.ID = "tbFirstName";
tbFirstName.Attributes.Add("Name", "tbFirstName");
divFirstName.Controls.Add(tbFirstName);
runat="server"
は、それからちょうどあなたのクリックイベントにコードを配置する必要があります。 (私の名前は気になります。純粋に理解を深めることです)。
ありがとうございます。しかし、私はクリックイベントに何を入れるべきかを知ることができますか? –
私はあなたが何を意味するのか分かりません。 Textboxを追加するボタンがある場合は、上のコードをボタンのclickイベントメソッドに入れてください。私が今あなたを混乱させていたら、私に知らせてください。元の答えを編集します。 – AndersDaniel
Lol。私は多分、私はいくつかの睡眠を取るべきだと思います。私はちょうど私のラップトップで無知主演8時間のように過ごした。しかし、とにかく、ありがとう!一度私はコーディングを試してみましょう:) –
おそらく、これを行う最もよい方法は、両方のテキストボックスをユーザーコントロールに配置することです。このユーザーコントロールは、両方のテキストボックスに属するすべてのロジックをカプセル化できます。 2つの値の差を計算することができます。たとえば、両方の検証などをすべてカプセル化します。このビットを1回書くだけです。
ページにプレースホルダを追加します。そのIDに "DynamicControlHolder"のIDを与えます。また、隠しフィールド - DynamicControlCountも必要です。これを使用して、追加した動的コントロールの数を保存できます。
二つの最も重要な概念は以下のとおりです。
- は
- right時dynamic controlsを追加ASP.Netが自動的にあなたのためにViewStateからの値 を移入して、ポストバックの間 IDを試してみて、maintain。それ以外の場合は、 を自分で管理する必要があります。初めてのページが読み込まれると、あなたは例えば、Page_Initで次のように行うことができます ので
、:あなたは、あなたのページ上のボタンを使用している場合
{
MyUserControl control = Page.LoadControl("~/path_to_my_usercontrol");
control.ID = "MyUserControl1";
DynamicControlCount.Value = "1";
DynamicControlHolder.Controls.Add(control);
}
を、「コントロールを追加します。 」、そして、クリックハンドラで:
{
int controlCount = Convert.ToInt32(DynamicControlCount.Value);
controlCount++;
//This section will add as many controls as i.
for(i = 1; i <= controlCount; i++)
{
MyUserControl control = Page.LoadControl("~/path_to_my_usercontrol");
control.ID = String.Format("MyUserControl{0}", i);
DynamicControlHolder.Controls.Add(control);
}
DynamicControlCount.Value = Convert.ToString(controlCount); //Note this is problematic
}
第二部を制御する最も簡単な方法は、UpdatePanelを使用することです。この主な理由は、保有しているコントロールの数を更新すると、ページのライフサイクルの最後でこれを行い、ポストバックではポストバック時の値が増えないことがあります。また、ページ全体がポストバックされていない場合は、ユーザーの方が小さく見えるようになります。
これは、あなたを始められるようにするためのちょっとしたアイデアです。この種のもののために良いの参照はここにある:
Truly Understanding Dynamic Controls
ビューステートの組み合わせ、ページのライフサイクル、クライアント側のレンダリングやその他の要因は、トリッキーなのこの1を作るため、この周りにいくつかの読書を行う必要がありますが、最も興味深いASP.Netのテクニック
- 1. テキストボックス内の数字に先行ゼロを自動的に追加する方法
- 2. C#WinForms - 自動的に2つのテキストボックスを追加する
- 3. イメージにQRコードを自動的に追加する方法
- 4. EditTextに空白を自動的に追加する方法
- 5. ページURLに自動的にgwt.codesvrを追加する方法
- 6. Xamarin - エンドポイントをAmazon SNSに自動的に追加する方法
- 7. 自動スケーリングインスタンスIPをセキュリティグループに自動的に追加/ホワイトリストする方法
- 8. Ruby: "#encoding:UTF-8"を自動的に追加する方法は?
- 9. 自動的にフィールドを追加する方法
- 10. 店舗の商品を自動的に追加する方法
- 11. ruamel.yamlで参照を自動的に追加する方法は?
- 12. フォーマットExcelで動的にテキストボックスを追加
- 13. ループでdivタグ内にテキストボックスを動的に追加する方法
- 14. AngularJSのng-repeat内にテキストボックスのCSSを動的に追加する方法
- 15. 自動的にテキストボックスを展開する方法
- 16. テキストボックスにヒントを追加する方法
- 17. テキストをテキストボックスに追加する方法
- 18. 適用方法ピボットテーブルフィルタを他のピボットテーブルに自動的に追加
- 19. リンクボタンを動的に自動生成されたGridviewに追加する方法
- 20. 追加の参照を自動的に追加する
- 21. 動的レポートに行数と自動増分を追加する方法は?
- 22. backgroundworkerからテキストボックスを自動的に呼び出す方法は?
- 23. 動的データを追加する方法
- 24. リピータフィールドに行を自動的に追加
- 25. ユニットを自動的にプロジェクトに追加
- 26. 動的にテキストボックスを追加し、asp.netのテキストボックスにデータを保存する
- 27. コードを追加せずに改行を自動的に変更する方法
- 28. PHPを使って動的にテキストボックスを追加する
- 29. 列と数式を自動的に追加するボタンをGoogleスプレッドシートに追加する方法
- 30. 自動的にポイントを追加
[Jquery - 非表示のフォーム要素をオンザフライで作成する](http://stackoverflow.com/questions/2408043/jquery-create-hidden-form-element-on-the -飛ぶ)。それともサーバサイドを望んでいますか?次に、例えば[こちら](http://www.singingeels.com/Articles/Dynamically_Created_Controls_in_ASPNET.aspx)をご覧ください。 – CodeCaster
ここを見てみる:http://stackoverflow.com/questions/4630095/dynamic-textbox-on-linkbutton-click –
可能であれば、ボタンが2つのテキストボックスを生成したい。 1つは費用のタイプ、もう1つは価格です。 tq –