2011-11-11 43 views
1

私が隠されているが、私は、ページの読み込みのデータリストを結合していページのポストバック後にHidden Fieldの値を保持する方法は?

hdnCFIV.Value = "1"; 

をクリックしてボタンを1に隠さ提出した値を変更しています

<asp:HiddenField ID="hdnCFIV" Value="0" runat="server" /> 

を提出し

if(hdnCHIV.Value == "1") 

しかし、私のascxページがリロードされているのでhdnCHIV.Valueが0を表示するたびに、if(!IsPostBack)のサイドにバインドコードを残しておけば、他の機能が影響を受けます。

ヒストリフィールドの値をポストバック時に0から1に変更すると、それを保持する方法。 JavaScriptやその他の方法がありますか?誰か助けてください。

+2

なぜボタンをクリックしてバインドしないのですか? – V4Vendetta

+0

すべての投稿にascxコントロールを読み込んでいますか? –

+0

@ V4Vendetta:ok私はそれを試しています。一度チェックしてみてください。 – Rocky

答えて

2

問題は、コントロールのイベントが処理されるよりも早くLoadイベントが発生することです。だから、現在のワークフローは、このようなものです:

  1. ASP.NETがページを解析し、0
  2. Page_LoadhdnCFIV.Valueプロパティを設定しますhdnCFIV.Valueは、データリスト結合が行われていないので、0に等しい、と呼ばれています。
  3. ボタンのクリックが処理され、hdnCFIV.ValuehdnCFIV.Valueがすでに1に設定されているときは、どちらかの同じボタンのクリックでこれを行うことができ、後で結合データリストを実行する必要があり、この問題を解決するには1.

に設定されていますハンドラまたはPage_PreRenderにあります。

関連する問題