用bootstrap-talbe前端傳值javascript
首先直接傳確定是不行的;前端
其次作一個全局變量也不行,由於這裏的問題的是用bootstrap-table進行生成的操做HTML,從這裏datass = row 只能獲得最後一次的值java
最後是打算先轉爲字符串,傳過去再轉成對象。json
可是直接進行JSON.stringify(row) 傳值仍是傳不過去提示 EditViewById('{ ,這裏沒有細究,直接用了encodeURI解決,以下:bootstrap
function actionFormatter(value, row, index) { var id = value; // datass = row; var datas = encodeURI(JSON.stringify(row)); var result = ""; result += "<a href='javascript:;' class='btn btn-xs green' onclick=\"EditViewById('" + datas + "', view='view')\" title='查看'><span class='glyphicon glyphicon-search'></span></a>"; result += "<a href='javascript:;' class='btn btn-xs blue' onclick=\"EditViewById('" + datas + "')\" title='編輯'><span class='glyphicon glyphicon-pencil'></span></a>"; result += "<a href='javascript:;' class='btn btn-xs red' onclick=\"DeleteByIds('" + id + "')\" title='刪除'><span class='glyphicon glyphicon-remove'></span></a>"; return result; }
總結:先將json對象轉爲字符串(JSON.stringify(obj))再將字符串編碼(encodeURI(jsonstr)),傳過去以後再先解碼(decodeURI(jsonstr)),再轉成json對象(JSON.parse(jsonstr))。函數
拓展:escape() 函數可對字符串進行編碼,這樣就能夠在全部的計算機上讀取該字符串。編碼
提示:能夠使用 unescape() 對 escape() 編碼的字符串進行解碼。spa
註釋:ECMAScript v3 反對使用該方法,應用使用 decodeURI() 和 decodeURIComponent() 替代它。code