FineUI href执行JS事件

参考地址

https://mvc.fineui.com/#/Grid/RowCommand 通过注册事件来解决

代码如下:

 F.ready(function () {
            var grid1 = F.ui.Grid1; //选取表格
            grid1.el.on('click', 'a.action-btn', function (event) {  //选取 a 标签里面的class
                var cnode = $(this);
                //你需要执行的事件
                if (cnode.hasClass('mybtn2') || cnode.hasClass('mybtn3')) {
                    F.confirm({
                        message: '你确定要这么做吗?',
                        target: '_top',
                        ok: function () {
                            doAction(cnode);
                        }
                    });
                } else {
                    doAction(cnode);
                }
            });

        });

//自定义JS事件
 function doAction(cnode) {
            var grid1 = F.ui.Grid1;
            var rowData = grid1.getRowData(cnode.closest('.f-grid-row'));
            var column = grid1.getColumn(cnode.parents('.f-grid-cell'));

            var message = '你点击了第 ' + (rowData.index + 1) + ' 行,第 ' + (column.index + 1) + ' 列,行ID:' + rowData.id + ',姓名:' + rowData.text;

            F.notify({
                message: message,
                target: '_top',
                header: false,
                positionX: 'center',
                positionY: 'top'
            });
        }

总结一下,就是原本<a href = "javascript:js_method()">文本</a> 变更为 <a class="action-btn mybtn1" href="javascript:;">文本</a> ,然后通过F.ready绑定执行事件,从而使得超链接变成JS事件

posted @ 2020-02-04 11:33  Alex_Mercer  阅读(353)  评论(0编辑  收藏  举报