高手帮忙看一下javascript函数传递参数的问题.
formatter:function(value,rowData,index){varval=rowData.targetGoalValue;vars='<ahref="...
formatter : function(value,rowData,index){
var val = rowData.targetGoalValue;
var s = '<a href="javascript:saverow(\''+val+'\',\''+tim+'\','+index+',\'zbsdsrlb\');">保存</a>';
return s;
}
上面这段函数是easyui datagrid里面的格式化列的函数,其中我通过rowData对象得到了其中的一个值然后当作saverow函数的参数传递进去,可是那个值为什么要\''+val+'\'用这种形式转义才能传递进去,而'+index+'又不需要进过转义可以直接传递进去。 展开
var val = rowData.targetGoalValue;
var s = '<a href="javascript:saverow(\''+val+'\',\''+tim+'\','+index+',\'zbsdsrlb\');">保存</a>';
return s;
}
上面这段函数是easyui datagrid里面的格式化列的函数,其中我通过rowData对象得到了其中的一个值然后当作saverow函数的参数传递进去,可是那个值为什么要\''+val+'\'用这种形式转义才能传递进去,而'+index+'又不需要进过转义可以直接传递进去。 展开
3个回答
展开全部
其实这是个简单的问题,关键是格式不太好,所以我也绕了半天。请看:
var val = '<a href="javascript:saverow(\''+val+'\',\''+tim+'\','+index+',\'zbsdsrlb\');">保存</a>'
代码有颜色显示,你是否明白了?其中val、tim、index都是变量,他们和其余的字符串是连接在一起的。最后的'zbsdsrlb'是个字符串。这里不是一个函数调用,仅仅是表示a标签href属性的值。在点击链接后,里面的代码才会运行。
其中\'表示一个单引号,而不带转义的',表示一个字符串边界。因为其含义不好用文字表述,所以你的眼睛要亮一下~
里面的内容去除转义后再带入一些值,是这样的:
// 假设
// val = 'value';
// tim = 'value2';
// index = 'value3';
<a href="javascript:saverow('value', 'value2', 'value3', 'zbsdsrlb');">保存</a>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询