- - PR -
webフォームのDataGridの選択ボタンで別フレームにページを表示するには?
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-12-28 08:58
ASP.NETでVBを使い開発を行っています。
以下のようなフォームを実現したいと思っています。 上下に分割されたフレームの上段にボタン列の選択ボタンを配置したデータグリッドを配置し、データの一覧を表示させ、選択ボタンをクリックした時に下段のフレームに選択した行のデータを表示し編集できるようにする。 この場合の下段のフレームにページを表示させる方法が分かりません。 フレームを指定してページを表示するには、クライアント側のスクリプトかリンクタグを書かなければならないと思うのですが、選択ボタンのクリックイベントにどのようなコードを書けば良いのでしょうか。また、下段のページを表示する際には、表示すべきデータのキー値を引数として渡す必要があるのですがどのようすれば良いでしょうか。 どなたか、ご存知のかたご教授願います。 _________________ | ||||||||||||
|
投稿日時: 2004-12-28 10:17
まずは、フレームをやめるのがいちばんいいです。
現行ASP.NETでフレームを扱うのは面倒です。 フレームを使わなくても上下に分割した構成にできます。 必要の無いときには非表示にすればいいでしょう。 _________________ たつごろー codeseek こみゅぷらす | ||||||||||||
|
投稿日時: 2004-12-28 10:44
フレームの扱いに対するお答え
上フレームにある「選択ボタン」のクリックで、下フレームの内容を 変えたい、ということですよね。 上のボタンをhtmlのボタンにして、onclick時に下フレームのhiddenフィールド を変更したあと、下フレームをsubmitしてはいかがでしょう。 _________________ たつごろー codeseek こみゅぷらす | ||||||||||||
|
投稿日時: 2004-12-28 11:01
こんにちは。私の方法ですので、他にも良い方法があるかもしれませんが、下記にサンプルを
記載しておきます。
parent.main.document.Form1.TextBox1.value に関しては、 parent 親 main フレーム名() document ドキュメント TextBox1 テキストボックス(hidden) @ 選択ボタン押下された時に、RegisterStartupScriptでJavaScriptを追加。 テキストボックス(hidden)にキー値をセット A キー値を使ってその後の処理を、Page_Loadに記載。TextBox(hidden)に何も 値が無い場合は何もしないようにする。 ※注意点 DataGridのページング機能を使用している際は、DataGrid1_ItemCommandに
何かご不明な点ありましたら、お知らせください。何度も言うようですが、他にも たくさんやり方はあると思われます。例えばSession変数を使って、PostBackさせ るとか。。。 [ メッセージ編集済み 編集者: SE卵 編集日時 2004-12-28 11:03 ] | ||||||||||||
|
投稿日時: 2004-12-28 12:11
回答ありがとうございます。
たつごろーさんに2点ほどお聞きしたいのですが。 まず1点は、フレームを使わずに画面分割できるということですが、具体的にはどうやるのでしょうか。 2点目は、「上のボタンをhtmlのボタンにして、onclick時に下フレームのhiddenフィールド を変更したあと、下フレームをsubmitしてはいかがでしょう。」とあるのですが、DtatGridのボタン列の選択ボタンをhtmlボタンにできるのでしょうか。選択ボタンをクリックした時に選択行の書式を変える等の機能はそのまま使いたいのですが.... 宜しくお願いします。 | ||||||||||||
|
投稿日時: 2004-12-28 13:03
私が書いた意図は、ASP.NETの1ページを、上段、下段に見た目を分けて使ってはいかがでしょうか、というものです。
なにか条件があるのでしたらはじめにご提示ください。 遠回りになります。 やりたいことと、その方法は別ですよね。 ASP.NET初心者さんは、方法にこだわっているのですか?それともやりたいことを実現したいだけですか?
私はやったことがありませんので、ほかの詳しい方のご説明を待ちます。 SE卵さんが提示してくださった方法はどうでしたか? _________________ たつごろー codeseek こみゅぷらす | ||||||||||||
|
投稿日時: 2004-12-28 13:41
こんにちは。勝手に代返してすいません。
パネルを使ったり、ラインを引くとか、要はHTMLなんですからレイアウトは人それぞれ工夫す れば、ある程度のことは出来るかと。。。
DataGridにテンプレート列を追加し、ItemTemplate列にHTMLのButtonを追加します。 その後、ButtonのonClickでJavaScriptの関数なりなんなりで処理を実行します。 残る問題は、DataGridの選択された行の書式を変えるということですよね?これは、 正直面倒です。実際に動作確認はしてないんので、あくまで推測ですが、PostBack等 で画面を更新してやらないの無理??なのでは。。。いや無理と言うと駄目ですね。 (あんまり調べてないので )どうにかすれば出来るんでしょうが、既存の DataGridの機能を使う方が効率的ではないかと思われます。 [ メッセージ編集済み 編集者: SE卵 編集日時 2004-12-28 13:42 ] | ||||||||||||
|
投稿日時: 2004-12-28 13:57
ボタン列の選択ボタンに「onclick時に下フレームのhiddenフィールド
を変更したあと、下フレームをsubmit」する処理を追加すればよいでしょう。 [ASP.NET]DataGridコントロールの削除ボタンで確認メッセージを表示するには? http://www.atmarkit.co.jp/fdotnet/dotnettips/104confirmdg/confirmdg.html |