从下拉列表中选择项目后使用ajax渲染PartialView

时间:2017-08-10 22:28:14

标签: javascript asp.net asp.net-ajax asp.net-mvc-partialview

我有以下ViewModel

public class ReservationDetails
    {
        public ReservationDetails()
        {

        }
        public Reservation Reservation { get; set; }

        public List<ReservationHouseDetails> ReservationHouseDetails { get; set; }

        public Dictionary<string,ReservationHouseDetails> MyProperty { get; set; }

        public List<ReservationAttractionDetails> ReservationAttractionDetails { get; set; }

        public IEnumerable<SelectListItem> Houses { get; set; }

        public int SelectedHouseDetailsId { get; set; }

        public string SelectedHouseDetailsText { get; set; }
    }

当我打开Details.cshtml视图时,它会显示DropdownList,其中包含house的名称。我想选择其中一个并在点击按钮显示在部分视图内容的某个div选定的房子中。 我应该如何纠正以下脚本以使用ajax

呈现局部视图
    <script type="text/javascript">
        $('.SelectHouse').click(function() {
  $('.divForSelectHouse').Load('@Html.Partial("~/Views/ClientReservations/ReservationHouseDetails.cshtml",Model.MyProperty[Model.SelectedHouseDetailsText])')
});
    </script>

我认为它应该是控制器中的附加方法,可以显示像这样的部分视图

public PartialViewResult DetailsHouse(ReservationHouseDetails houseDetails)
        {
            return PartialView("ReservationHouseDetails", houseDetails);
        }

在这种情况下,如何将object作为参数传递给此方法,如果必须将其序列化,它应该是什么样的?

0 个答案:

没有答案