0

ドロップダウン リスト イベントの発生に問題があります。

次のドロップダウンがあります。

asp:dropdownlist id="ddlhello" Runat="server" AutoPostBack="True"  onchange="javascript:return ChangeHeader();"

また、コード ビハインドにイベント、つまり selectedindex 変更イベントを追加しました。

ページを実行すると問題が発生します。JavaScript は実行されますが、サーバー側のコードは起動しません。この行を削除するとonchange="javascript:return ChangeHeader();"、サーバー側のコードが起動します。

ソース ページを確認すると、onchange関連する 2 つのイベントが表示されます。1 つは JavaScript 用で、もう 1 つはサーバー サイド用です。

クライアント側のコードを選んでいて、サーバー側を無視していると思います。

よくわからないので、行動の理由を知りたいです。

そして、これを解決する方法は何ですか。

サーバー側とクライアント側のコードを実行したい。解決策を検索しましたが、正しい理由が見つかりませんでした。

私を助けてください。

4

2 に答える 2

1

サーバー側のイベントをドロップダウンでバインドすることはできません。onselectedindexchanged でバインドします。

onselectedindexchanged="DropDownList1_SelectedIndexChanged"

<asp:dropdownlist id="ddlhello" Runat="server" AutoPostBack="True"   onselectedindexchanged="DropDownList1_SelectedIndexChanged" onchange="javascript:return ChangeHeader();" </asp:dropdownlist>

クライアントから false を返すと、ポストバックが停止します。

function ChangeHeader()
{
 //return false; // will stop the postback
  return true; //will cause postback
}
于 2012-10-24T11:01:20.203 に答える
0

onchange="return ChangeHeader();" の代わりに次のように使用します。onchange="ChangeHeader();"

これがお役に立てば幸いです。

于 2012-10-24T11:06:40.420 に答える