1. 程式人生 > >JavaScript onclick傳遞對象參數(easyui傳遞一行數據時)錯誤:uncaught SyntaxError: Unexpected identifier

JavaScript onclick傳遞對象參數(easyui傳遞一行數據時)錯誤:uncaught SyntaxError: Unexpected identifier

提示框 edit fun 過程 傳遞對象 HR expected 思路 ide

JavaScript onclick傳遞對象參數(easyui傳遞一行數據時)錯誤:uncaught SyntaxError: Unexpected identifier

博主遇到的是用onclick傳遞對象參數時(easyui傳遞一行數據時),會報Sncaught SyntaxError: Unexpected identifier錯誤。
經查,onclick(對象)這種傳遞對象形式裏面的對象會變成onclick([object Object])

  • 解決方法:將對象轉化為json字符串,再將json字符串的雙引號轉換成單引號就行了
  • 思路: JSON.stringify().replace(/\”/g,”’”)將對象轉化成JSON字符串傳遞,函數接收後會自動變成對象(原理暫不清楚)。
  • 過程解釋: JSON.stringify()將對象轉化成JSON字符串;.replace(/\”/g,”’”)將JSON字符串中的雙引號轉化成單引號,不然會報Unexpected end of input錯誤(這個錯誤是由於帶的json字符串。它的雙引號與onclick控件的雙引號沖突了)

  • 代碼內容如下

  • 傳遞參數
 var $row = JSON.stringify(row).replace(/\"/g,"‘");//row的是一個對象
 <a href="#" onclick="editParentRow(‘+$row+‘)">編輯</a>//拼接傳遞對象
  • 1
  • 2

  • 接收參數
    function editParentRow(obj){     
       console.log(obj);//console打印
       alert(obj);//提示框
    }

JavaScript onclick傳遞對象參數(easyui傳遞一行數據時)錯誤:uncaught SyntaxError: Unexpected identifier