Отображаемые значения на основе раскрывающегося списка mvc 4

Я получаю внутреннюю ошибку 500, когда хочу получить значения DDL в mvc 4 он запускается и дает мне идентификатор продукта, как показано ниже, но не показывает мне детали Porduct: http: // localhost: 24494 / Merchant / GetProduct? id = 14

Контроллер:

[HttpGet]
public PartialViewResult GetProduct(int id)
{
    ProductRepository BlProduct = new ProductRepository();
    var model = BlProduct.Find(id);
    return PartialView("_CampProductPartialView", model);
}

Частично:

@model CrazyAvocado.ViewModels.Merchant.AddCampaignViewModel

<div class="display-field">
    @Html.DisplayFor(model => model.Product.Name)
</div>

<div class="display-label">
     @Html.DisplayNameFor(model => model.Product.Price)
</div>

Посмотреть:

@using (Html.BeginForm("AddCampaign", "Merchant", FormMethod.Post, new { enctype = "multipart/form-data", id = "myUploadForm" }))

Выпадающий список:

@Html.DropDownListFor(x => Model.Campaign.Productid, new SelectList(Model.Products, "id", "Name"), htmlAttributes: new { @class = "form-control", id = "ProductsDDL" })

Div, содержащий это, должен отображать детали: Идентификатор Div: divPartialView.

@Html.Partial("_CampProductPartialView")

И наконец скрипт JQuery

<script>
  $("#ProductsDDL").change(function(event) {
    var ProductId = $(this).val();
    $.ajax({
      url: "@Url.Action("
      GetProduct ", "
      Merchant ")",
      data: {
        id: ProductId
      },
      type: "Get",
      dataType: "html",
      success: function(data) {
        //Whatever result you have got from your controller
        // with html partial view replace with a specific html.
        $("#divPartialView").html(data); // HTML DOM replace
      }
    });
  });
</script>

Используйте инструменты своего браузера (вкладка «Сеть»), чтобы обработать ответ - он предоставит вам подробную информацию об ошибке.

user3559349 31.10.2018 22:01

Поместите точку останова после строки var model = BlProduct.Find(id); и посмотрите, назначены ли модели какие-либо правильные данные. Также проверьте, не обнаружили ли вы ошибок в консоли браузера.

Tetsuya Yamamoto 01.11.2018 02:15
0
2
43
0

Другие вопросы по теме