ユーザーを開始点にリダイレクトするようにAsp.Netを取得する方法

StackOverflow https://stackoverflow.com/questions/225149

  •  03-07-2019
  •  | 
  •  

質問

Guys、私は15年以上コードを書いてきましたが、どうにかして“ Web Development” 3か月前まで。

以前のAsp.netアプリケーション(.net 1.1から開始し、現在.Net 2.0を使用しています)を継承しました。これは製品の管理ツールです。

いくつかの場所では、管理ツールは単に値の長いリストを維持します。

リスト(200以上のアイテム)がGridView(ページA)に表示され、ユーザーがアイテムの編集ボタンをクリックすると、値の変更が可能なアイテム(ページB)の編集ページが表示されます(または値、リスト内のアイテムは、名前と住所、好みの色、猫の品種など、いくつかの値に関連付けることができます。)

現在、ユーザーが“保存”を押したときページBで、ページAにリダイレクトします。ページがリストの上部に開きます。これは、複数のアイテムを順番に構成する必要があり、ユーザーは1編集、2。そのアイテムまでスクロールします

やりたいことは、リストを編集したばかりのアイテムにユーザーを戻すことです。多くの場合、順番にいくつかのアイテムを一緒に構成する必要があるためです。

最速のガンストップ。 。 。読み続けます

  1. “の行の提案は、リスト内の項目が少なくなるようにアイテムを再グループ化します”役に立たないとみなされます
  2. .Net 3.5がこれを自動的に行う有効なポイントは、私には役に立たないと見なされます(しかし、とにかくそれらを投稿すると、他の貧しい馬鹿を助けるかもしれません)
  3. ページAを再ロードするときに編集済みアイテムのIDを投稿し、グリッドをこのポイントまでスクロールすることでこれを行うことができると思いますが、私の質問はです。 。 。

これを行うための機能はありますか? および/または
これを行うために受け入れられている方法は何ですか?

事前に感謝 B.心配者

役に立ちましたか?

解決

これは、アンカータグを使用して実現できます。 ページAで要素を出力するとき、次のように各要素の横にアンカータグを設定します。

<a name="#175"></a>

このアイテムがアイテムID 175になる場所。 次に、PageAにリダイレクトするときに、「#175」を追加します。 URLの最後に

Response.Redirect("PageA.aspx#175");

他のヒント

最も簡単な方法は、PageBに保存した後にPageAにリダイレクトしながら、URLのクエリ文字列でPageBからidを返すことです。

e.g。 www.example.com/PageA.aspx?editedId=89

およびPageAのPageLoadでは、HttpContext.Current.QueryStrubg [&quot; editedId&quot;]に有効な値があるかどうかを調べることで、これが編集詳細ページからのものかどうかを確認できます。 あった場合、それはPageBからのものであることを意味します。 この値を使用して、データグリッド内の行を簡単に強調表示または選択できます

最速のガンストップ。 。 。そして読み続けます...

適切なコントロールを使用すると、PageAなどの同じページで複数の行を同時に編集し、一緒に保存できます。データグリッドのTelerikコントロールを確認してください。あなたはそれが好きです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top