台灣最大程式設計社群網站
線上人數
1649
 
會員總數:246631
討論主題:190057
歡迎您免費加入會員
討論區列表 >> Java Script/ Node.js >> 參數傳值後數值0會被過濾掉,英文會顯示錯誤問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
參數傳值後數值0會被過濾掉,英文會顯示錯誤問題
價值 : 100 QP  點閱數:784 回應數:1
樓主

Chinyung Lin
門外漢
0 5
91 4
發送站內信

各位先進想請教個問題,我在php檔案內透過 onMouseOver ="cusDate('.$row['scustno'].')" 將資料庫的值放在參數內返回函式

檔案如下 :


發現一個問題當我的資料欄位內有英數的值時例如A0001時,會顯示Uncaught ReferenceError: A0002 is not defined錯誤
但是當我欄位內的值為00001時,可以取到值但是0會被過濾掉只留下1的值,但是如果欄位內的值為100001時是可以正常顯示的
不知有什麼的方式可以解決此問題呢??可以讓值完整的取得。

以下是js檔案





搜尋相關Tags的文章: [ 參數被過濾掉 ] , [ Uncaught ReferenceError ] , [ ] ,
本篇文章發表於2015-06-06 02:28
1樓
回應

迷路
捐贈 VP 給 迷路 檢舉此回應
因為你的參數沒有用引號括起來,原始碼會顯示為
<tr onMouseOver ="cusDate(00001)"; ><td>00001</td><td>XXXXX</td></tr>
類似這樣
如果參數要傳入字串,要用引號括起來,沒括起來就會被默認為數字或變數
如果傳入值為00001會被當成數字,如果傳入值為A0001會被當成變數
前者會把前面的零去掉,後者會出現錯誤訊息,意思是變數未定義
請將第九行改成
echo '<tr onMouseOver ="cusDate(\''.$row['scustno'].'\')"; ><td>'.$row['scustno'].'</td>
試試看
本篇文章回覆於2015-06-08 09:35
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.