Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 标记onclick中的html特殊字符_Javascript_Html - Fatal编程技术网

Javascript 标记onclick中的html特殊字符

Javascript 标记onclick中的html特殊字符,javascript,html,Javascript,Html,我有一个带有onclick事件的标记,如下所示: onclick="cl_showEvents({ 'posts' : [{ 'CategoryName':'categoryName', 'postID':'1', 'title':'title', 'address':'address', 'time':'00:00'}] })" 它工作正常,直到发出转义序列,如下所示: onc

我有一个带有onclick事件的标记,如下所示:

onclick="cl_showEvents({ 
    'posts' :     
    [{
        'CategoryName':'categoryName',
        'postID':'1',
        'title':'title',
        'address':'address',
        'time':'00:00'}]
    })"
它工作正常,直到发出转义序列,如下所示:

onclick="cl_showEvents({ 
    'posts' :     
    [{
        'CategoryName':'categoryName',
        'postID':'1',
        'title':'title',
        'address':'streetName st'',
        'time':'00:00'}]
    })"

我错过了什么?

不是你问题的答案-我不知道如何
'
打破了这种结构——但在我看来,在标记中放的东西太多了。我建议将整个内容移动到页面底部的一个单独脚本中,或者移动到
加载
/
DOMLoad
事件中

sansjquery:

document.getElementById("your_element").onclick = function() 
  {
   cl_showEvents({ 
   'posts' :     
    [{
    'CategoryName':'categoryName',
    'postID':'1',
    'title':'title',
    'address':'streetName st'',
    'time':'00:00'}]
    })

  }

在符号和前加反斜杠:

 'address':'streetName st\''

避免实体的转换
&39编码到它所表示的字符中。

这不是因为字符是HTML编码的,而是因为它是撇号。使用撇号作为字符串分隔符时,必须在字符串中转义撇号:

onclick="cl_showEvents({ 
  'posts' :     
  [{
    'CategoryName':'categoryName',
    'postID':'1',
    'title':'title',
    'address':'streetName st\'',
    'time':'00:00'}]
  })"
请注意,撇号不需要HTML编码,您只需使用常规撇号即可(看到这样的代码可以更清楚地看出为什么撇号需要转义):


我知道这一点,我会的,但我对这个问题很感兴趣,这就是FireBug在属性列表后所说的:missing}。我试着用谷歌搜索它,但没有成功。不,反斜杠不能阻止实体转换成撇号。它避开实体转换为的撇号。
onclick="cl_showEvents({ 
  'posts' :     
  [{
    'CategoryName':'categoryName',
    'postID':'1',
    'title':'title',
    'address':'streetName st\'',
    'time':'00:00'}]
  })"