私たちのプロジェクトでは、私の考えではなくASP.netのサーバー側コントロールを使用しています。
これらのコントロールの一部を無効にするクライアント側のコードがあります。
は、しかし、私は無効になっているリストボックスのSelectedValue
取得できませんよ:ASP.netサーバー側ListBoxコントロール - コントロールが無効なときに値を取得します。
ListboxA
場合は、その後、ポストバックで、クライアント側で無効になっているが、ListboxA.SelectedValue
は(選択した値がであっても)空であります。リストボックスが無効でない場合、選択した値が正しく返されます。
私は単純にポストバックの前にすべてのコントロールを有効にすることで、これを回避する方法を見つけましたが、それはちょっとばかげています。誰かがより良いアイデアを得ましたか?
PS:シナリオ例:ユーザーが「ユーザータイプ」リストボックスに「管理者」を選択した場合、「権限」リストボックスには、値「すべて」のセットを持っており、その管理者のみが作成することができるので、無効になりましたすべての権限で。
回避策はあまりにも愚かではありません。それ以外のオプションは、クライアントサイドスクリプトを使用して値を読み取り、隠しフォーム要素に割り当てるか、ドロップダウンを無効にするのではなく、同じことを模倣する独自のスクリプトを持つことです。無効なフォーム要素は値を送信しません。これは変更できません。 –