如何使用jquery方法将参数传递给局部视图.load()

时间:2012-08-30 21:08:52

标签: jquery asp.net-mvc razor load asp.net-mvc-partialview

如何使用jquery方法.load()将参数传递给局部视图,我有这个功能

 var str;
    var x;
    x = $("#whereQuery");
    str = x.attr("value");
    $("#btnSearch").click(function () {
        $('#budgetsKey').dialog({
            modal: true,
            title: "Clave presupuestal de ingresos",
            width: 550,
            minWidth: 400,
            maxWidth: 650,
            show: "slide",
            hide: "slide",
            draggable: false,
            resizable: false,
            open: function(event, ui) {
            //Load the CreateAlbumPartial action which will return 
            // the partial view _CreateAlbumPartial
            $(this).load("@Url.Action("Prueba2")", { str: str});
        }

        });
        return false;
    });
});

在我的控制器中我有这个

 public PartialViewResult Prueba2(String str)
    {
        List<PTI_IncomeBudgetTransference> incomeBudgetTransferenceList;
        cmp_Company = this.masterService.company.GetById(1);
        //Recupera las cuentas por pagar por autorizar
        incomeBudgetTransferenceList = siagService.incomeBudgetTransference.GetAll(this.cmp_Company.CMP_ID, "Pendiente de Autorización");
        return PartialView("Prueba2", incomeBudgetTransferenceList);
    }

我需要“str”来在我的控制器中执行查询,但是如何将其发送到我的操作

3 个答案:

答案 0 :(得分:1)

只有在你知道字符串的情况下它才有效,在我的情况下,字符串是一个客户端变量,所以我将代码更改为如下所示:

$(this).load('@ Url.Action(“Prueba2”')+'/'+ str);

答案 1 :(得分:0)

您应该在开放处理程序中执行此操作

$(this).load('@Url.Action("Prueba2", new { str = str})');

答案 2 :(得分:0)

这也可以。

`$("#divForPartialView").load("/HelloWorld/GetAwesomePartialView",
  { param1: "hello", param2: 22},function (){/do other cool client side stuff}

);`