Javascript 有人能帮我解决这个语法错误吗?
嗨,我正在php页面上尝试下面的代码。由于函数openCity()的参数“London”周围有单引号,所以我一直遇到语法错误,如下所示Javascript 有人能帮我解决这个语法错误吗?,javascript,php,syntax,Javascript,Php,Syntax,嗨,我正在php页面上尝试下面的代码。由于函数openCity()的参数“London”周围有单引号,所以我一直遇到语法错误,如下所示 echo '<button class="tablinks" onclick="openCity(event, 'London')">London</button>'; function openCity(evt, cityName) { var i, tabcontent, tablinks; tabcontent = doc
echo '<button class="tablinks" onclick="openCity(event, 'London')">London</button>';
function openCity(evt, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
'''
What I am trying to do is when a user clicks the button, it shows a block of elements (Like a tabs).
echo“伦敦”;
如果我删除包含“London”的单引号,并在其中添加双引号,则该函数将无法按预期工作。我没有看到什么?有办法解决这个问题吗
openCity()JavaScript函数如下所示
echo '<button class="tablinks" onclick="openCity(event, 'London')">London</button>';
function openCity(evt, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
'''
What I am trying to do is when a user clicks the button, it shows a block of elements (Like a tabs).
函数openCity(evt,cityName){
var i,tabcontent,tablinks;
tabcontent=document.getElementsByClassName(“tabcontent”);
对于(i=0;i
您没有在echo语句中转义'London'
字符串中的引号。您需要使用反斜杠(\
)来防止这种情况
echo '<button class="tablinks" onclick="openCity(event, \'London\')">London</button>';
echo“伦敦”;
如果没有转义,代码将认为字符串在第一个引号处结束。单引号内的双引号内的单引号。您必须转义内部引号。是的,我可以通过转义内部引号来修复它。