0

更新パネルに奇妙な問題があります。

アプリケーションの1つでDevexpressControls、JQUERYAJAXを使用しています。私はサーバー側のコーディング+クライアント側のコーディングアプローチを使用しました。つまり、aspxgridviewがあるいくつかのページでJquery、JS、AJAX +UpdatePanelを使用しました。

私が直面した問題に応じて、例の状況を介してシナリオを作成しています。

1)egCounty、State、City用のASPxcomboBoxがいくつかあります。

2)国のクライアント選択インデックス変更で、AJAXを介してデータをフェッチし、JSONを使用してState ASPxComboBoxの状態をバインドし、Stateのクライアントインデックス変更の都市コンボについても同じです。

3)都市コンボのインデックス変更で、ASPxGridViewをいくつかの関連データとバインドし、ASPxGridViewとCityコンボはAJAX経由でASPxGridViewをバインドできないため、更新パネルでラップされます。ポストバックを回避するために、更新パネルを使用して正常に動作しました。

4)ユーザーが送信クリック時にグリッドからレコードを選択しない場合、ユーザーは任意の1つのレコードを選択するように求められ、サーバー側のボタンのクリックイベントで検証を続けています。

現在、問題は送信後に検証が行われた後です。州のコンボアイテムは繰り返されています。たとえば、最初のアイテムは次のとおりです。--select--、USA、および検証が行われた後、その表示--select--、USA、-select--、USA。

クライアント側を介してバインドされているため、ページ読み込みイベントのコントロールをバインドしていません。EnableSynchronisationのプロパティはTrueであり、aspxComboBoxのクライアントアイテムとサーバーアイテムを同期します。

送信をクリックしたときにデバッガーを使用しているのを見たとき。ページ読み込みイベントの状態コンボをすばやく確認しました。2つは繰り返しアイテムであるため、アイテム数は4です。

問題は、ページの最初の行のLoadイベントにウォッチを追加すると、アイテムが4としてカウントされることです。これは、アイテムがサーバーに誤って投稿されたことを意味します。

[更新]パネルを削除すると、すべて正常に機能します。

なぜ間違ったアイテム/繰り返しアイテムがサーバーに投稿されているのかわかりません。助けてください。

4

1 に答える 1

0

問題を解決しました。

更新パネルをStateComboにラップしました。

AJAXを使用してクライアントにバインドしたため、サーバー操作を介して状態コンボを更新する必要がないため、実際には必要ありませんでした。

しかし、更新パネルをそれにラップすることで問題は解決しました。

于 2013-02-27T10:34:02.667 に答える