twa*_*wal 6 c# ajax asp.net-mvc renderaction
是否可以使用ajax来使用HTMl.RenderAction来提供参数?
我有这样的控制器动作
[ChildActionOnly]
Public ActionResult EmployeeData(string id)
{
Employee employee = new Employee();
//do work to get data
Return PartialView(employee);
}
Run Code Online (Sandbox Code Playgroud)
局部视图只是一个包含一些员工数据(名称,地址等)的小表
然后我有一个页面,其中包含员工下拉列表,其中数据字段是EmployeeData所需的ID(字符串ID)
我想使用ajax,因此当从下拉列表中选择员工时,EmployeeData部分视图将显示在其下方而不刷新页面.如果选择了另一名员工,则再次.
虽然我不知道如何做到这一点,如果可能的话.
正如我在这里推荐的那样.(请不要介意这不是我上面提到的员工数据示例,数据在数据库中没有准备好,我有多个区域可以做同样的事情所以我决定今天就这个工作)
在我看来,这是我的JS
$("#repList").change(function () {
var id = $("#repList").val();
$.ajax({
url: '/Reporting/GetSalesTargets/' + id,
success: function (result) {
$("#partialdiv").html(result);
},
error: function () {
alert("error");
}
});
});
Run Code Online (Sandbox Code Playgroud)
我正在进入将返回视图的控制器操作,这是它.
public ActionResult GetSalesTargets(string id)
{
int month = DateTime.Now.Month;
SalesMarketingReportingService mktSrv = new SalesMarketingReportingService();
SalesTargetModel model = mktSrv.GetRSMSalesTargetModel(id, month);
return PartialView(model);
}
Run Code Online (Sandbox Code Playgroud)
Dar*_*rov 17
这是可能的,但您必须删除该[ChildActionOnly]属性.它成为一个普通的动作,返回你可以使用AJAX调用的局部视图:
$.ajax({
url: '/home/employeedata/123',
success: function(result) {
$('#somedivid').html(result);
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9265 次 |
| 最近记录: |