遇到的问题
做表格数据修改时,需要传递ID值,这个ID值是后端给的,数据都正确。如图:
但是,前端函数传参到js里边后,js识别成了数字,并自动转换为科学计数法,,把 1-10 的ID 1.10 自动转为了 1.1,导致修改的是1-1的值。
解决方法
1.给要传递的数字加引号,将其作为字符串传递,js将不会转为科学计数法
var div=document.createElement("div");
var pmOperation=document.createElement("button");
$(pmOperation).attr({"type":"button",
"onclick":"modifyOcmStatusConfig('"+c.vindex+"',"+c.oaOcmStatusInsetLosCompt+");" //传值注意加引号
});
$(pmOperation).text(i18nJson["Pm_Modify"]);
$(pmOperation).addClass("btn btn-default btn-sm");
$(div).append(pmOperation);
return $(div).html();
2.将要传递的值以属性的方式绑定在按钮上面
$(pmOperation).attr({"type":"button",
"onclick":"modifyOcmStatusConfig(this);",
"vindex":c.vindex, //将值绑定到按钮属性上,通过$(obj).attr("vindex") 取值
"oaOcmStatusInsetLosCompt":c.oaOcmStatusInsetLosCompt
});
如图:vindex已成为button属性