1. 程式人生 > >(問題)呼叫JS函式,傳過去的引數為什麼變成了[OBJECT]

(問題)呼叫JS函式,傳過去的引數為什麼變成了[OBJECT]

--頁面元素程式碼
<tr><td><input type="button" name="addElement" onclick="addElement('String','form1','text','string','y','','y')" value="新增String"/></td>
這裡錯了
var _move = document.createElement("<input type='button' name='delete' value='delete' id='btn"+i+"' onclick='removeElement("+id+")'/>");
改成
var _move = document.createElement("<input type='button' name='delete' value='delete' id='btn"+i+"' onclick='removeElement(\""+id+"\")'/>");
呼叫的時候少了 引號 導致 字串變成不存在的變量了

//說明 :

當在字串中拼接變數時需要\""+變數名+"\" 如果完成引號不轉義html就不會識別引號內的引號會把引號內的引號當成一個變數

所以引數傳過去就會被當成[OBJECT]或[object HTMLFormElement]