2010-11-24 15 views
1

私はasp.netページを持っています。このページには、デフォルトボタンと更新パネルとドロップダウンリストがあるパネルがあります。上/下キーで項目を選択し、Enterキーを押してフォームを入力すると、フォームが入力されますが、フォームは送信されています。これをどうすれば解決できますか?asp:DropDownListは選択時にページを送信します。

EDIT いくつかのコード:あなたのドロップダウンリストで

<asp:SqlDataSource ID="sdsCountries" runat="server" ConnectionString="cs" 
SelectCommand="SELECT CountryID, Title FROM Countries"/> 

<asp:DropDownList ID="ddlCountries" runat="server" DataSourceID="sdsCountries" 
DataValueField="CountryID" DataTextField="Title" AutoPostBack="True" 
OnSelectedIndexChanged="ddlCountries_SelectedIndexChanged"/> 

<asp:UpdatePanel ID="upState" runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <asp:SqlDataSource ID="sdsStates" runat="server" ConnectionString="cs" 
    SelectCommand="SELECT StateID, Title FROM States WHERE [email protected]"> 
      <SelectParameters><asp:ControlParameter Name="CountryID" 
     ControlID="ddlCountries" PropertyName="SelectedValue" DefaultValue="1"/> 
      </SelectParameters> 
     </asp:SqlDataSource> 
     <asp:DropDownList ID="ddlStates" runat="server" DataSourceID="sdsStates" 
     DataValueField="StateID" DataTextField="Title"/> 
    </ContentTemplate> 
    <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="ddlCountries" 
     EventName="SelectedIndexChanged" /> 
    </Triggers> 
</asp:UpdatePanel> 

答えて

2

属性 "のAutoPostBack" が "真"

EDITに設定されていないことを確認してください:あなたのコメントを見ました。私はASP.Netのアップデートパネルでは大したことではありません。私は通常、jQueryを使ってajaxを処理しますが、ddlCountriesドロップダウンリストを独自の更新パネルに入れたり、状態更新パネルに移動したり、ChildrenAsTriggers属性をその更新パネルで真。

+0

falseに設定のAutoPostBackしかし、私は、関連するデータのための別のドロップダウンがあるので、それは、有効にする必要があります。たとえば、Countries> Statesなどです。 ddlStateには、ddlCountriesが変更されたときに関連項目が設定されます。 –

+0

更新を参照してください。フィラーのテキスト – Adrian

+0

動作しません。これまでのベストソリューションは、パネルとデフォルトのbutonを削除することです –

1

関連する問題