2017-09-12 249 views
0

請幫助我這個代碼語法錯誤

<?php 
if (!empty($this->product->customfieldsSorted['youtube'])) { 
    $this->position = 'youtube'; 
    echo '<button class="shop_tablinks tab2" onclick='"openSpecs(event, 'Specs3')"' >'; 
    echo JText::_('Video'); 
    echo '</button>'; 
} // Product Custom ontop end 
?> 

好像我不寫ok了

onclick='"openSpecs(event, 'Specs3')"' >' 
+2

請告訴我你的問題/問題?你沒有解釋任何東西。 –

+0

[PHP中單引號和雙引號字符串有什麼區別?](https://stackoverflow.com/questions/3446216/what-is-the-difference-between-single-quoted-and -double-quoted-strings-in-php) – crazyloonybin

回答

5

下面替換你的代碼:

<?php if (!empty($this->product->customfieldsSorted['youtube'])) { 
     $this->position = 'youtube'; 
     echo '<button class="shop_tablinks tab2" onclick="openSpecs(event, \'Specs3\')">'; 
     echo JText::_('Video'); 
     echo '</button>'; 
    } // Product Custom ontop end 
    ?> 

如果您想在使用html代碼時使用'',則需要使用轉義運算符,同時回顯爲''。所以在HTml代碼中它將其視爲concat運算符。

+0

如果你指出你改變了什麼以及爲什麼,它可能會改善你的答案。 –

+0

該代碼工作正常 –

+0

@ValiRossi你可以接受我的答案然後 – Naincy

2

更改線路

echo '<button class="shop_tablinks tab2" onclick='"openSpecs(event, 'Specs3')"' >'; 

echo '<button class="shop_tablinks tab2" onclick="openSpecs(event, \'Specs3\')" >'; 

最終代碼:

if (!empty($this->product->customfieldsSorted['youtube'])) { 
    $this->position = 'youtube'; 
    echo '<button class="shop_tablinks tab2" onclick="openSpecs(event, \'Specs3\')" >'; 
    echo JText::_('Video'); 
    echo '</button>'; 
}