剛剛遇到一個問題,調用js函數的參數里帶空格,造成調用失敗的問題。
部分代碼如下:
html+="<div><a href=javascript:confirm("+id+", '"+
name+"');>";
//name中如果有空格就是調用失敗
html+="</a></div>";
在網上查了一下,發現是因為href寫的不規范,加上雙引號就可以了。
但是,因為<a>被包含在一個動態html中,使用 \" 或是轉義字符 " 都不成功。
后來,在html上改成單引號,在標簽上使用雙引號,並使用轉義字符,就可以順利運行了。
最后是這個樣子的:
html+='<div><a href="javascript:confirm('+id+',''+name+'');">';
html+='</a></div>';
注,HTML常用的轉義字符:
單引號:'
雙引號:"
空格:
小於號(<):<
大於號(>):>
與號(&):&
版權號(©):©
參考:
1)JS函數如何傳遞帶空格參數
2)關於js中單引號(')和雙引號(")的使用以及轉義的理解