2014-09-19 73 views
0

IM傳遞從Ajax調用檢索值像這樣一個功能:值作爲參數的函數

nuevaFila+='<td><input type="button" value="Agregar" onclick="AgregarSuvenir('+item.CODSUVENIR+');"></td></tr>'; 

我們我點擊它拋出一個undefinided「變量」,但不是一個按鈕可變的,我只是想將它作爲一個字符串傳遞,並傳遞給函數的值作爲一個變量,我試圖

onclick="AgregarSuvenir("'+item.CODSUVENIR+'") and onclick="AgregarSuvenir('+item.CODSUVENIR+""') 

但失敗

有人幫助我如何通過值作爲字符串,而不是一個變量。

感謝提前

+0

您應該檢查在瀏覽器控制檯哪些變量是抱怨 – andrex 2014-09-19 17:23:27

+0

*「有人幫我如何將值傳遞的字符串」 *字符串用引號分隔。即你必須添加引號。困難來自你正在處理嵌套引號的事實。 – 2014-09-19 17:23:35

+0

@Andrex它抱怨通過的價值,例如。 item.CODSUVENIR = SSX,所以它表示未定義變量SSX – 2014-09-19 17:25:55

回答

0

這是一個簡單的匹配引號的情況。由於使用單引號分隔字符串,因此必須在函數調用中添加轉義引號,以便將插入的值視爲字符串。

下面是逃避報價以允許參數爲AgregarSuvenir功能就像一個字符串要處理兩個可能的解決方案:

nuevaFila+='<td><input type="button" value="Agregar" onclick="AgregarSuvenir(\''+item.CODSUVENIR+'\');"></td></tr>'; 

或:

nuevaFila+="<td><input type=\"button\" value=\"Agregar\" onclick=\"AgregarSuvenir('"+item.CODSUVENIR+"');\"></td></tr>";