如何从Syncfusion MVC Grid中的选定行获取列值

时间:2016-01-23 22:39:42

标签: javascript asp.net-mvc syncfusion

我的应用程序ASP.NET MVC 5即时通讯使用Syncfusion控件。

以下是我的观点:

0 0 0 1 1 0 0 0 0 1 1 1 0 0

我的问题是如何从选定行获取UserName并将其粘贴到ActionLink中。

2 个答案:

答案 0 :(得分:1)

在网格定义中添加

.ClientSideEvents(evt => evt.RowSelected("onRowSelected"))

并添加javascript函数

<script>    
    function onRowSelected(args) {
        var result = this.getSelectedRecords();

        var userName = result[0].UserName;        

        var deleteUserLink = $("#DeleteUser").attr('href');
        var changePassUserLink = $('#ChangePass').attr('href');

        var newDeleteUserLink = deleteUserLink.replace("UserNameToRaplace", userName);
        var newChangePassUserLink = changePassUserLink.replace("UserNameToRaplace", userName);

        var deleteUserLink = $("#DeleteUser").attr('href', newDeleteUserLink);
        var changePassUserLink = $('#ChangePass').attr('href', newChangePassUserLink);
    };
</script>

答案 1 :(得分:1)

您可以使用getSelectedRecords方法获取所选信息。但是当在网格中启用多选时,它将返回所有选定的记录。

因此,要获取当前选定的行数据,您只需从arguments事件的rowSelected访问该数据即可。

function onRowSelected(args) {
    var userName = args.data.UserName;

    //Do something.
};

参考链接:http://help.syncfusion.com/js/api/ejgrid#events:rowselected