您的位置:首页 > Web前端 > JavaScript

js添加事件,比如点击事件传参,或者jqgrid行点击事件

2017-02-07 00:00 363 查看
添加事件,传参,比如点击事件,一般是这样的:
function operateFmatter(cellvalue, options, rowObject) {
//不管怎么样,上级都是可以查看自己的对员工的上级评的
//cellvalue - 当前cell的值
//options - 该cell的options设置,包括{rowId, colModel,pos,gid}
//rowObject - 当前cell所在row的值,如{ id=1, name="name1", price=123.1, ...}
var str = "";
var functionId = options.rowId;

//员工自评链接
var stree = "";
//stree = "<a class='btn btn-link' role='button' href='javascript:void(0);' onclick='editFunction(" + functionId + ")' >" +
//    "员工自评 </a>";

str = stree + "<a  class='btn btn-link' role='button'  href='javascript:void(0);' onclick='leaderFunction(" + functionId + ")' >" +
" 评价 </a>";
return str;
}

然后 我们 在 leaderFunction 里面就可以获取到 参数 functionId 了。
但是有时候又是不可以的。具体要看什么代码了,总之我也搞不懂,
但是我有了 解决这个bug 的方法,就是 在参数 两边加上 转义 双引号。
例子:
//操作保存
function actFormatter(cellvalue, options, rowObject) {
var functionId = "";
functionId = options.rowId;

var str = "";
str = "<a  class='btn btn-link' role='button'  href='javascript:void(0);' onclick='saveGridRow(\"" + functionId + "\")' > 保存 </a>";
console.log('1111>>>>>>>>>' + str);
//如果过时或者是 已提交了,就不应该显示操作按钮。
return str;

}

这样就在 方法里面 saveGridRow获取到参数了
//表格里面保存该行表格里面的数据。
function saveGridRow(functionId) {

console.log( '>>>>>>>>>' + functionId.toString());

}
如果不加上 " 就获取不到,打印出来是什么 HTMLObject 什么的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: