0

私は自分のプロジェクトで Web フォームを使用することを余儀なくされています。悲しいことに、Web フォームでは、「厳格な」Web サイトしか作成できません。

ボタンが必要なときはいつでも、それをフォームに配置する必要があります。次に、前のボタンとは関係のない別のボタンが必要で、2 つのフォームを持つことはできません。

そして、サーバー側 (C#) メソッドを起動する DIV を配置するというアイデアは、ちょっと難しいです。簡単かもしれませんが、私が見つけたのは「トリック」であり、「公式」のクリーンな方法ではありません。

だから私は自分のウェブサイトの各アクションに対してウェブページを作るという考えを持っています.

例えば:

この質問の評価を上げる矢印をクリックしたいとしましょう。このようなものを置きます。

HTML

<a href="Rating.aspx?id=23&upOrDown=up" id="rateUpButton">Rate Up</a>

そして、美しいボタンのように見せるためのいくつかのCSSコード...

これで、 Rating.aspxという 2 つのパラメーターを持つページが表示されます。最初のパラメーターは、評価を上げたい質問の ID で、2 番目のパラメーターは UP (+rating) または DOWN(-評価)。

Rating.aspx の Page Load メソッドでは、データベースを更新してから、質問ページにリダイレクトします。

これは完全に機能しますが、それは良いアプローチですか? プロですか?(そのように実行する多くのアクションがあることに注意してください...)

4

1 に答える 1

0

ASP.NET では、サーバー コントロールをより適切に使用できます。または を使用して実装するより良い方法は、実際にアンカータグをレンダリングします。ただし、OnClick イベント ハンドラーをこのコントロール (リンク ボタン) にアタッチすると、クリック後にサーバーへの自動 POST が行われます。現在のページに対して同じページ サイクルが発生し (これは PostBack と呼ばれます)、添付されたイベント ハンドラーが起動し、実際にデータベースに変更を加えることができます。したがって、このようなタスクのために他のページを作成する必要さえありません。すべてのサーバー コントロールには、ボタンの OnClick やドロップダウン リストの OnSelectedIndexChanged などの特定のイベント セットがあります。独自のコントロールを作成したり、既存のコントロールから派生させて独自のイベントを作成したりすることもできます。

詳細については、次のリンクを参照してください。

ボタンクリック

ASP.NET でのイベント処理

ASP.NET ページのライフ サイクル

于 2012-12-26T15:05:03.053 に答える