2017-08-03 7 views
0

asp.net Webformsデータベースドロップダウンリストから2つのドロップダウンリストが作成されています。Asp.Net別のドロップダウンリストからドロップダウンリストを設定する方法

2番目のddlに最初のddlフィルタを挿入します。ここで

私のコード

$(function() { 
     $('select#ContentPlaceHolder_ddl1').change(function() { 
      var param1= $(this).val(); 
      var dataString = { 'param1': param1, 'tip' : 1}; 
      //alert(scope); 
      //building unit 
      $('select#ContentPlaceHolder_ddl2').empty(); 

      $.ajax({ 
       url: 'ChangeDDL.aspx/listele', 
       type: 'POST', 
       data: dataString, 
       cache: false, 
       success: function (data) { 
        $.each(data, function (key, DropDownListItem) { 
         $('select#ContentPlaceHolder_ddl2').append(
           '<option value="' + DropDownListItem.value + '">' 
           + DropDownListItem.optionText + 
           '</option>'); 

        }); 
       } 

      }); 

である私は、HTMLからデータを取得することができますが、私はDropDownListItemクラスとのデータが欲しいです。私のクラスはここにあります。

public class DropDownListItem 
{ 
    public string value { get; set; } 
    public string optionText { get; set; } 
} 

ChangeDDL.aspx私はデータを返そうとしていますが、私はその方法を知らないです。ここに私のaspxファイルです

[System.Web.Services.WebMethod] 
public static List<DropDownListItem> listele(string scope, int tip) 
{ 
    if (tip == 1) 
    { 
     List<DropDownListItem> obj = new List<DropDownListItem>(); 
     DataTable dt = (..sql query) 
       foreach (DataRow dr in dt.Rows) 
     { 
      obj.Add(new DropDownListItem 
      { 
       value = dr["building_unit"].ToString(), 
       optionText = dr["building_unit"].ToString() 
      }); 
     } 
     return obj; 
    } 
    else 
    { 
     return null; 
    } 
} 

私はlistele機能にアクセスすることはできません。

答えて

1

多分、あなたはscriptmanagerを有効にするのを忘れたかもしれません。

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"> 
</asp:ScriptManager> 

try this tutotial ASP.NETでAJAXを使用する方法を説明しています。

+0

jsコードでgetSecondDDLを使用するにはどうすればよいですか?これはURLとして使用するには十分です: 'ChangeDDL.aspx'、 –

+0

url: "YourNameOfTheASPX.aspx/MethodName"は[this tutotial](https://www.aspsnippets.com/Articles/Call-ASPNet-Page-Method- using-jQuery-AJAX-Example.aspx)それは非常に理解しやすいです –

+0

私は私のqueを更新しました。 –

関連する問題