2012-01-23 6 views
2

私のフォームでは、AjaxToolkit ModalPopupExtenderを使用しています。私がしたいことは、ユーザーがテキスト= "一部でのListItemを選択したときということで、今RadioButtonListの処理ajaxToolkitのSelectedIndexChangedイベントポストバックのないModalPopupExtender

  <asp:Panel ID="PopUpWindowPanel" runat="server" Visible="false" BorderStyle="Solid"> 
       <table cellpadding="2" cellspacing="0" width="100%" border="0" class="dataTbl"> 
        <tr> 
         <td class="left"> 
          <asp:RadioButtonList ID="RdBtnLstSortOptions" runat="server"> 
           <asp:ListItem Text="No change." Selected="True" 
            Value="None"></asp:ListItem> 
           <asp:ListItem Text="Some Change." 
            Value="Existing"></asp:ListItem> 
          </asp:RadioButtonList> 
         </td> 
        </tr> 
        <tr> 
         <td class="left"> 
          <asp:Label ID="lblList" runat="server">List:</asp:Label>&nbsp; 
          <asp:DropDownList ID="ddlList" runat="server" Visible="false"> 
          </asp:DropDownList> 
         </td> 
        </tr> 

        <tr> 
         <td colspan="3"> 
          <div class="divBtn"> 
           <asp:LinkButton ID="btnDone" class="button" runat="server" OnClick="btnDone_Click">OK</asp:LinkButton>&nbsp; 
           <asp:LinkButton ID="btnCloseProfile" class="button" runat="server">Cancel</asp:LinkButton> 
          </div> 
         </td> 
        </tr> 
       </table> 
      </asp:Panel> 

:PopupControlIdは、RadioButtonListのを持っているし、ポップアップしdropdownlist.Theパネルは、このようなものであるパネルに設定されています変化する。" Value = "Existing"の場合、id = "ddlList"のドロップダウンリストのみが表示されます。そうでない場合は、非表示にする必要があります。私はページの負荷でサーバー側でこのリストに値を設定しています。これは、私はjavascript/jqueryでこれを処理しようとしているので、これはajaxcontrol私はポストバックをしたくないです。私はJavascript/Jqueryの初心者ですので、これを正しく行う方法はわかりません。私の質問は、私が選択した時にドロップダウンリストを表示できるように、私はきちんとこのjqueryの/ JavaScriptを書くことができる方法です)

関数pageLoad( {

$find('<%= RdBtnLstPresortOptions.ClientID %>').add_selectedIndexChanged(
    function (sender, args) { 
     var selectedValue = $(this).val(); 

     if ($.trim(selectedValue) == 'Existing') { 

      // show the dropdown list ddlList 
     } 

     else { //show the hide the dropdown list ddlList } 

    }); 
} 

を:私はこのようなものであるいくつかのjQueryを書かれていますラジオボタンオプション。ありがとう。

答えて

1

これは私のために働いた。また、関数の呼び出し

$("#<%=RdBtnLstPresortOptions.ClientID%>").change(function() { 
    var rbvalue = $("input[@name=<%=RdBtnLstPresortOptions.UniqueID%>]:radio:checked").val(); 

    if (rbvalue == "Existing") { 
     $("#<%=ddlList.ClientID%>").css("display", "block"); 
     $("#<%=lblList.ClientID%>").css("display", "block"); 



    } else if (rbvalue == "None") { 
     $("#<%=ddlList.ClientID%>").css("display", "none"); 
     $("#<%=lblList.ClientID%>").css("display", "none"); 

    } else { 

    } 
}); 
0

Visible=Falseでサーバーコントロールを使用すると、クライアントに表示されないため、表示できません。できることは、Visible=truestyle="display:none"でレンダリングすることです。 次に使用してください:

$find('').add_selectedIndexChanged(
    function (sender, args) { 
     var selectedValue = $(this).val(); 

     if ($.trim(selectedValue) == 'Existing') { 
      $get('<%= ddlList.ClientID %>').style.display="block"; 
      // show the dropdown list ddlList 
     } 

     else { //show the hide the dropdown list ddlList } 

    }); 
+0

はこのような何かをやった:$( "#<%= RdBtnLstPresortOptions.ClientID%>")の変化を(関数()すなわち引数は必要なかったです。 –

関連する問題