使用jquery Ajax加载PartialView?

PartialView

@model OsosYeni23072012.Models.TblMeters 

Model.customer_name

Model.meter_name

调节器

 [HttpGet] public ActionResult MeterInfoPartial(string meter_id) { int _meter_id = Int32.Parse(meter_id); var _meter = entity.TblMeters.Where(x => x.sno == _meter_id).FirstOrDefault(); return PartialView("MeterInfoPartial", _meter); } 

剃刀

 @Html.DropDownList("sno", new SelectList(Model, "sno", "meter_name"), "-- Select Meter --", new { id = "meters"}) @Html.Partial("MeterInfoPartial") 

如果下拉列表更改,我想加载部分视图。 但我不知道我怎么能这样做。 我找不到任何关于此的例子。 我用actionlink做到这一点。 但我之前没有下拉。

控制器参数meter_id等于dropdownlist selectedvalue。

谢谢。

您可以订阅下拉列表的.change()事件,然后触发AJAX请求:

  

然后你将使用给定id的div包装partial:

 
@Html.Partial("MeterInfoPartial")

另外,为什么要在控制器操作中进行解析,将其留给模型绑定器:

 [HttpGet] public ActionResult MeterInfoPartial(int meter_id) { var meter = entity.TblMeters.FirstOrDefault(x => x.sno == meter_id); return PartialView(meter); } 

注意FirstOrDefault因为如果在数据库中找不到匹配的记录,则给定meter_id它将返回null ,当您尝试访问模型时,部分将崩溃。