Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.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代码中的引号的HTML标记_Javascript_Html - Fatal编程技术网

包含带引号的JavaScript代码中的引号的HTML标记

包含带引号的JavaScript代码中的引号的HTML标记,javascript,html,Javascript,Html,我正在编写JavaScript代码,在单击时将函数getImage指定为稍后应该显示在页面中的图像的源。然而,引号给了我一个问题 <img src="bill.jpg" class="captify" id="teamformat" alt="Bill Gates" onclick="getName('Bill Gates'); getMotto('Bill\'s motto'); getImage ('<img src=\"http://www.somepage.com/im

我正在编写JavaScript代码,在单击时将函数getImage指定为稍后应该显示在页面中的图像的源。然而,引号给了我一个问题

<img src="bill.jpg" class="captify" 
id="teamformat" alt="Bill Gates" onclick="getName('Bill Gates'); 
getMotto('Bill\'s motto'); 
getImage ('<img src=\"http://www.somepage.com/images/team/bill.jpg\"/>');" />
”);" />
如何修复getImage函数中的引号?
谢谢。

通常,您不需要在单引号分隔的字符串中转义双引号:

getImage ('<img src="http://www.somepage.com/images/team/bill.jpg"/>');" />
您遇到了一个问题,因为您在一个属性中同时使用了两种类型的引号-您的JavaScript太多了,需要转义内部的双引号(使用

这两个都应该放在一个javascript函数中,并将click事件附加到该函数中-不要直接将它们放在
onclick
事件处理程序中,这是一种不好的做法

比如:

function getDetailsForBill(){
     getName('Bill Gates'); 
     getMotto('Bill\'s motto'); 
     getImage ('<img src="http://www.somepage.com/images/team/bill.jpg" />');
}

虽然您确实应该注册一个事件侦听器,但通常使用。

,您不需要在单引号分隔的字符串中转义双引号:

getImage ('<img src="http://www.somepage.com/images/team/bill.jpg"/>');" />
您遇到了一个问题,因为您在一个属性中同时使用了两种类型的引号-您的JavaScript太多了,需要转义内部的双引号(使用

这两个都应该放在一个javascript函数中,并将click事件附加到该函数中-不要直接将它们放在
onclick
事件处理程序中,这是一种不好的做法

比如:

function getDetailsForBill(){
     getName('Bill Gates'); 
     getMotto('Bill\'s motto'); 
     getImage ('<img src="http://www.somepage.com/images/team/bill.jpg" />');
}
尽管您确实应该注册一个事件侦听器,但请使用。

不要逃避它:

getImage ('<img src="http://www.somepage.com/images/team/bill.jpg"/>');" />
getImage(“”);“/>
不要逃避它:

getImage ('<img src="http://www.somepage.com/images/team/bill.jpg"/>');" />
getImage(“”);" />

您只需转义字符串中的重复引号,例如,
fun('这是最后一天')
您只需转义字符串中的重复引号,例如,
fun('这是最后一天')
感谢您的及时回复。这是一个好主意,将所有内容都放在一个函数中。我删除了引号转义斜杠,并将其打印在可单击的图像下方”);“/>@user1655857-正如我所说,使用函数可以避免所有这些问题。”您不需要在单引号分隔的字符串中转义双引号“-呃,在这种情况下,你会的,不是吗?HTML在解析属性时不调用JavaScript解析器。我很确定属性值不能包含原始的
。这就是
的用途。如果使用
onclick
属性是一种不好的做法,那么您为什么还要这样做呢?再次感谢您,按照您的建议解决了这个问题。我将getDetailsForBill()函数放在它在标记中使用的其他函数下面,例如getName()函数,每个函数都使用这个样式文档。getElementById('show_name')。innerHTML=name。我试图使用样式显示getDetails函数提供的数据,但它没有显示详细信息。谢谢您的及时回复。这是一个好主意,将所有内容都放在一个函数中。我删除了引号转义斜杠,并将其打印在可单击图像的下方”);“/>@user1655857-就像我说的,通过使用函数来避免所有这些问题。“你不需要在单引号分隔的字符串中转义双引号”-呃,在这种情况下,你需要,不是吗?HTML在解析属性时不调用JavaScript解析器。我很确定属性值不能包含原始的
。这就是
的用途。如果使用
onclick
属性是一种不好的做法,那么您为什么还要这样做呢?再次感谢您,按照您的建议解决了这个问题。我将getDetailsForBill()函数放在它在标记中使用的其他函数下面,例如getName()函数,每个函数都使用这个样式文档。getElementById('show_name')。innerHTML=name。我试图使用样式显示getDetails函数提供的数据,但它没有显示细节。