【问题标题】:performcallback gridview after combobox filtering组合框过滤后执行回调gridview
【发布时间】:2016-04-01 02:35:37
【问题描述】:

你能帮我解决我的问题吗,我制作了gridview,我使用组合框过滤gridview中的数据并在过滤后获取gridview performcallback,但gridview在过滤后没有回调。我能怎么做 ?请帮帮我? 这是一些代码: 控制器gridview过滤器:

        [HttpPost]
        public ActionResult FilterTypePro(String typePro)
        {
            //Session["typePro"] = typePro;
            var model = Model._ProposalObject.ListDataProposal();

            if (typePro != null && typePro != string.Empty)
            {
                model = Model._ProposalObject.ListDataProposal(typePro);
            }

            return PartialView("_gvPartialViewProposals", model);
        }

这是获取值过滤器组合框的代码:

    function OnClickFilter(type) {
        type = cbTypeProposal.GetValue();     
        $.ajax({
            type: "POST",
            cache: false,
            async: false,
            url: '@Url.Action("FilterTypePro", "App")',
            data: { 'typePro': type },
            success: function (data) {
                /*gvPartialViewProposals.AdjustControl();
                try {
                    gvPartialViewProposals.PerformCallback();
                }
                catch(er){
                }*/
                gvPartialViewProposals.Refresh(data);
            }
        });
    }

这是查看cshtml的代码:

groupItem.Items.Add(item =>
            {
                    item.Caption = "Type Of Proposal";
                    item.Width = 400;
                    item.SetNestedContent(() =>
                    {
                        ViewContext.Writer.Write("<table><tr><td>");
                        Html.DevExpress().ComboBox(cmbSettings =>
                        {
                            cmbSettings.Name = "cbTypeProposal";
                            cmbSettings.Width = 100;
                            cmbSettings.Properties.DropDownStyle = DropDownStyle.DropDownList;
                            cmbSettings.ShowModelErrors = true;
                            cmbSettings.Properties.Items.Add("ATL", "ATL");
                            cmbSettings.Properties.Items.Add("BTL", "BTL");
                            cmbSettings.Properties.ClientSideEvents.SelectedIndexChanged = "function(s, e) { OnClickFilter();}";
                        }).Render();
                        ViewContext.Writer.Write("</td></tr></table>");
                    });
                }); ;
        }).GetHtml();

希望你能帮助我。

【问题讨论】:

    标签: javascript asp.net-mvc-4 gridview combobox devexpress


    【解决方案1】:

    修改你的javascript函数如下:

    function OnClickFilter(type){
        type = cbTypeProposal.GetValue(); 
        gvPartialViewProposals.PerformCallback({
            'typePro': type
        });
    } 
    

    如下修改您的网格设置:

    settings.Name = "gvPartialViewProposals";
    settings.CustomActionRouteValues = new { Controller = "App", Action = "FilerTypePro" };
    

    【讨论】:

    • 谢谢你的回答,但我已经解决了我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 2013-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    相关资源
    最近更新 更多