Javascript 引号和函数中的引号

Javascript 引号和函数中的引号,javascript,Javascript,由于系统的设置方式,我需要以onclick的形式执行此操作: var name = "o'hanrahan"; var htmlData = '<ul class="">'; htmlData += '<li onclick="alert('hello ' + name)">Enter</li>'; htmlData += '</ul>'; return htmlData; var name=“o'hanrahan”; var htmlDat

由于系统的设置方式,我需要以onclick的形式执行此操作:

var name = "o'hanrahan";

var htmlData = '<ul class="">';
htmlData += '<li onclick="alert('hello ' + name)">Enter</li>';
htmlData += '</ul>';

return htmlData;
var name=“o'hanrahan”;
var htmlData='
    ; htmlData+='
  • 输入
  • ; htmlData+='
'; 返回htmlData;
我简化了这个例子。名字会改变,可能是任何东西


如何使引号中的引号在js中工作?

您必须对其进行转义:

var name = "o\\'hanrahan";

var htmlData = '<ul class="">';
htmlData += '<li onclick="alert(\'hello ' + name + '\')">Enter</li>';
htmlData += '</ul>';

return htmlData;


这样,名称就无关紧要了,你必须避开它们:

var name = "o\\'hanrahan";

var htmlData = '<ul class="">';
htmlData += '<li onclick="alert(\'hello ' + name + '\')">Enter</li>';
htmlData += '</ul>';

return htmlData;


这样名称就无关紧要了,您需要用\来转义,并且名称的呈现字符串必须位于单引号内

htmlData += '<li onclick="alert('hello ' + name)">Enter</li>';
htmlData+='
  • 输入
  • 需要

    htmlData += '<li onclick="alert(\'hello ' + name.replace(/'/g,"\\'") + '\')">Enter</li>';
    

    htmlData+=”您需要用\转义,并且名称的呈现字符串必须位于单引号内

    htmlData += '<li onclick="alert('hello ' + name)">Enter</li>';
    
    htmlData+='
  • 输入
  • 需要

    htmlData += '<li onclick="alert(\'hello ' + name.replace(/'/g,"\\'") + '\')">Enter</li>';
    

    htmlData+=“如果名称不同,我将如何在名称中添加反斜杠。如果名称不同,我将如何在名称中添加反斜杠。应该是
    name。replace(/'\\\\/g,\\\$1”)
    应该是
    name。replace(/'\\\/g,\\\$1”)
    这是一系列非常糟糕的三个问题。因为前两次你固执地拒绝解释自己,你只是浪费了每个人的时间。你在那里问了三个问题,这是一个非常糟糕的系列。因为前两次你固执地拒绝解释你自己,你只是浪费了每个人的时间。