使用多个参数刷新部分视图

本文关键字:刷新部 视图 参数 | 更新日期: 2023-09-27 18:12:31

你好,我试图刷新部分视图与多个参数。我让它在一个参数下工作。我怎样才能让它在多个参数下工作。这是我目前得到的代码。查看

@{
    ViewBag.Title = "Report";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<script type="text/javascript">
    $(document).ready(function () {
        $("#serviceLine").change(function () {
            var url = "/Home/PartialView1?serviceLine=" + $(this).val();
            alert(url);
            $("#reportContent").load(url);
        }); 
        $("#ClientID").change(function(){
            var url = "/Home/PartialView1?ClientID=" + $(this).val();
            alert(url);
            $("#reportContent").load(url);
        });
    });
</script>
<h3>Report</h3>
<div>
    <table>
        <tr>
            <td>Client</td>
            <td>@Html.DropDownList("ClientList", null, new {id = "ClientID"})</td>
            <td>ServiceLine</td>
            <td>@Html.DropDownList("ServiceLine", null, new {id="serviceLine"}) </td>
</td>
        </tr>
    </table>
</div>
<div>
    <h2>List</h2>
    <div id="reportContent">
        @Html.Action("PartialView1", new { clientID = 0, serviceLine = "_" })
    </div>
</div>
控制器

public ActionResult PartialView1(int clientID, char serviceLine)
        {
            //Login
            return PartialView();
        }
有什么建议吗?

使用多个参数刷新部分视图

你可以试试:

$.ajax({
    url: "Home/PartialView1",
    type: 'POST',
    data: { "clientID": myclientId, "serviceLine" : myServiceLine }
}).done(function (data) {
    div("#reportContent").html(data);
});

把所有的参数放到data属性中

您可以使用jQuery ajax方法并填充success方法的结果。比如:

$.ajax({
    url: "@Url.Action("PartialView1", "Home")",
    type: "POST",
    data: { clientID: $("#ClientID").val(), serviceLine: $("#serviceLine").val() },
    success: function (result) {
        $("#reportContent").html(data);
    }
});