none
MVC de Birbirine Bağlı DropDownListlerde Hata RRS feed

  • Soru

  • <script type="text/javascript">
        $(function () {
            $("#MainCategory").change(function () {
                var selectedItem = $(this).val();
                var ddlStates = $("#SubCategory");
                var statesProgress = $("#states-loading-progress");
                statesProgress.show();
                $.ajax({
                    cache: false,
                    type: "POST",
                    url: "@(Url.Action("GetAllSubCategoryByMainCategoryID", "Product"))",
                        data: { "MID": selectedItem },
                        success: function (data) {
                            ddlStates.html('');
                            $.each(data, function (SubCategoryID, option) {
                                ddlStates.append($('<option></option>').val(option.SubCategoryID).html(option.CategoryName));
                            });

                        },
                        error: function (xhr, ajaxOptions, thrownError) {
                            alert('Failed to retrieve states.');

                        }
                    });
                });
         });
        </script>

       [HttpPost]
            public ActionResult GetAllSubCategoryByMainCategoryID(int MID)
            {
                List<SubCategory> AllSubCategory = new RepositoryPattern<SubCategory>().GetAllEntities(x => x.MainCategoryID == MID).ToList();
                return this.Json(AllSubCategory, JsonRequestBehavior.AllowGet);
            }

    Herşey Doğru Ama Kod Habire Error Kısmına Düşüyor  Yorumlarınızı Esirgemeyin

    19 Eylül 2013 Perşembe 01:56

Yanıtlar

  • sorun şurada olabilir;

    data: { "MID": selectedItem }

    data : JSON.stringify({ MID, selecteditem })
    şeklinde deneyin. JSON.stringfy veriyi json a çevirmeye yardımcı olur.

    ActionResult  Json olduğuna göre veriyi de getJSON ile alın. aslında yolu uzatmışsınız biraz. Benim yazdığım bu;

    $('#CustomerProvinceId').change(function () {
        $('#CustomerCountryId').html('');
        $.getJSON('@Url.Action("GetCountriesByProvinceId", "Order")/' + $(this).val(), null, function (d) {
            var o = document.createElement("OPTION");
            $(o).attr("value", '-1');
            $(o).html('[SEÇİNİZ]');
            $('#CustomerCountryId').append(o);
            for (i in d) {
                var o = document.createElement("OPTION");
                $(o).attr("value", d[i].Id);
                $(o).html(d[i].Name);
                $('#CustomerCountryId').append(o);
            }
        });
    });


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC




    19 Eylül 2013 Perşembe 05:38
    Moderatör

Tüm Yanıtlar

  • sorun şurada olabilir;

    data: { "MID": selectedItem }

    data : JSON.stringify({ MID, selecteditem })
    şeklinde deneyin. JSON.stringfy veriyi json a çevirmeye yardımcı olur.

    ActionResult  Json olduğuna göre veriyi de getJSON ile alın. aslında yolu uzatmışsınız biraz. Benim yazdığım bu;

    $('#CustomerProvinceId').change(function () {
        $('#CustomerCountryId').html('');
        $.getJSON('@Url.Action("GetCountriesByProvinceId", "Order")/' + $(this).val(), null, function (d) {
            var o = document.createElement("OPTION");
            $(o).attr("value", '-1');
            $(o).html('[SEÇİNİZ]');
            $('#CustomerCountryId').append(o);
            for (i in d) {
                var o = document.createElement("OPTION");
                $(o).attr("value", d[i].Id);
                $(o).html(d[i].Name);
                $('#CustomerCountryId').append(o);
            }
        });
    });


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC




    19 Eylül 2013 Perşembe 05:38
    Moderatör
  •  url: "@(Url.Action("GetAllSubCategoryByMainCategoryID", "Product"))",

    bu kısım da da sorun var

     url: "@(Url.Action("GetAllSubCategoryByMainCategoryID", "Product"))/?MID=" + selecteditem ,

    şeklinde değiştirip deneyebilirsiniz.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC


    19 Eylül 2013 Perşembe 06:36
    Moderatör