js對象無法當成參數傳遞

新博客地址


如果我的文章幫到了你,嘻嘻,請給我點個贊。

喜歡用第三方插件的可以看看哦,說不定你也會碰到的這個問題的(至少以前在easyui中我遇到類似的,但是它有其他的方法可以實現,就避免了這個問題)。得意

如標題所言,今天我碰到了這個問題一頭霧水,明明記得對象是可以傳參的啊。我使用了一款基於bootstrap的表格插件DataTables,想把行信息直接傳給操作函數,方便編輯(此行信息是一個對象,按道理可以的啊),但是寫出來後怎麼也不執行,於是我用谷歌調試,過程如下。




在表格加載的時候執行上面的代碼,把行信息傳遞給了editInfo函數,出來界面如下:




當點擊編輯的時候,谷歌就報了這個錯誤:




我在網上百度過,大多是由於缺少分號,或雙引號不正確造成的,但找了一遍並沒有發現問題,又調試了一次發現editInfo函數根本沒有執行,這我就找到了問題的源頭(傳參未能傳成功)。於是我查看了網頁加載後的樣子。


<


上網百度了很多對象傳參的問題,但都無解,只好請教我的好朋友外加大神小豬幫忙,他告訴我可以傳字符串試試。於是就有了下面的改動:




但依舊不能執行編輯事件,發現被瀏覽器解析過後變成如下的樣子:




雙引號必須成對出現,這樣當然不會執行事件了,最開始我想把full對象用escape編碼,這樣傳遞過去就是一個字符串,然後接受的時候反編碼,不過小豬說大可不必這樣麻煩,最終至修改了這個地方:




如此以來點編輯的時候就執行了。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章