将json作为javascript中的参数传递,内容中包含空格

时间:2014-05-19 02:59:08

标签: javascript json

以下内容无效时

<a onclick=fbShareDialog("{\"name\":\"aaaaaaa\"}">

但如果

之间有空格
<a onclick=fbShareDialog("{\"name\":\"bbbbb bbbbb\"}">

它抛出Uncaught SyntaxError:意外令牌非法

因为我认为所有内容都在引用中,为什么不起作用?

提前致谢

2 个答案:

答案 0 :(得分:0)

你需要确保逃离空间并将所有内容放在双引号内。

我现在无法测试它,但尝试类似的东西。

另外,如果您没有内联编写此函数并编写一个函数来捕获click事件,则可能更好一点。

答案 1 :(得分:0)

你暗示一个无报价属性,这在HTML中是非常糟糕的形式,但遗憾的是由于HTML的肮脏历史而仍然允许。该属性是&#39; onclick&#39;,它实际上包含fbShareDialog,但不是引号。

尝试:

<a onclick='fbShareDialog({"name":"bbbbb bbbbb"})'>

或者更好的是,将点击事件绑定到应用的.js文件中,而不是html中的onclicks。