【问题标题】:How can I get selected rows on Devexpress MVC GridView?如何在 Devexpress MVC GridView 上获取选定的行?
【发布时间】:2014-12-16 15:37:27
【问题描述】:

我想一次获取在 Devexpress MVC GridView 上选择的行。不是在每个点击的项目上。

【问题讨论】:

    标签: devexpress devexpress-mvc


    【解决方案1】:

    参考:How to get all GridView selected keys and pass them to a Controller

    您可以在客户端收集所有选定的值(例如,键) 通过ASPxClientGridView.GetSelectedFieldValues 方法和 将它们传递给:

    示例代码sn-p:

    <script type="text/javascript">
        var selectedIDs;
        function OnBeginCallback(s, e) {
            //Pass all selected keys to GridView callback action
            e.customArgs["selectedIDs"] = selectedIDs;
        }
        function OnSelectionChanged(s, e) {
            s.GetSelectedFieldValues("PersonID", GetSelectedFieldValuesCallback);
        }
        function GetSelectedFieldValuesCallback(values) {
            //Capture all selected keys
            selectedIDs = "";
            for (var index = 0; index < values.length; index++) {
                selectedIDs += values[index] + ",";
            }
            if (selectedIDs.length > 0)
                selectedIDs = selectedIDs.substring(0, selectedIDs.length - 1);
        }
        function OnClick(s, e) {
            //Show all selected keys on client side
            alert(selectedIDs);
        }
        function OnSubmitClick(s, e) {
            //Write all selected keys to hidden input. Pass them on post action.
            $("#selectedIDsHF").val(selectedIDs);
        }
    </script>
    

    控制器

    namespace Sample.Controllers {
        public class HomeController : Controller {
            PersonsList list = new PersonsList();
    
            [HttpGet]
            public ActionResult Index() {
                return View(list.GetPersons());
            }
    
            [HttpPost]
            public ActionResult Index(string selectedIDsHF) {
                //Get all selected keys from hidden input
                string _selectedIDs = selectedIDsHF;
    
                return View(list.GetPersons());
            }
    
            public ActionResult GridViewEditingPartial() {
                //Get all selected keys from e.customArgs on GridView callback
                string _selectedIDs = Request.Params["selectedIDs"];
                ViewData["_selectedIDs"] = _selectedIDs;
    
                return PartialView(list.GetPersons());
            }
    
        }
    }
    

    注意:客户端GetSelectedKeysOnPage Method返回当前页面中显示的选定行的键值。

    参考:
    GridView - How to get selected rows as an action parameter
    GridView - How to get values of selected rows in the Controller's Action
    How do I get my selected GridView rows into a Javascript variable?
    DevExpress MVC GridView - How to get cell click event
    How to highlight a particular row in a page of a DevExpress MVC GridView?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-24
      • 1970-01-01
      • 2021-08-09
      • 2012-09-27
      • 2016-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多