我有一个涉及PHP变量的链接的按钮,但是当按钮被单击时,没有发生任何事情,并且我没有根据链接进入新页面。我用<a>
标签而不是<button>
标签测试了链接,并且链接有效。我是一个PHP新手,所以任何建议都很感谢。
代码如下:
<?php
echo
'<button type="button" class="btn btn-secondary" id="btn" style="margin-left:0%;color:gray" onclick="location.href="' . $child_page . '"">
KEEP READING <span class="glyphicon glyphicon-chevron-right" style="color:gray"></span>
</button>';
echo '<a href="' . $child_page . '">Link </a>';
?>
变量可以看起来像:/n/2/ar/
,并且将像这样应用:www.example.com/n/2/ar/
。请注意,内联CSS仅用于测试目的。
你的引号有问题试试这个:
<?php
$x = 'http://test.com';
$y = 'location.href="'.$x.'"';
echo
'<button type="button" class="btn btn-secondary"
id="btn"
style="margin-left:0%;color:gray"
onclick='.$y.'>
KEEP READING
<span class="glyphicon glyphicon-chevron-right" style="color:gray"></span>
</button>';
?>
引号有问题使用:
echo
'<button type="button" class="btn btn-secondary" id="btn" style="margin-left:0%;color:gray" onclick=location.href="'.$child_page.'">
KEEP READING <span class="glyphicon glyphicon-chevron-right" style="color:gray"></span>
</button>';
看起来你的开始标记有问题。代码
$child_page = '/n/2/ar/';
echo '<button ... onclick="location.href="' . $child_page . '"">';
呈现
<button ... onclick="location.href="/n/2/ar/"">
被浏览器理解为
<button ... onclick="location.href=" /n/2/ar/ "">
所以位置是空的。试着用单引号代替:
$child_page = '/n/2/ar/';
echo '<button ... onclick="location.href=''' . $child_page . '''">';
如果你用双引号而不是单引号开始,可以这样做:
$child_page = 'this.html';
echo "<button type='button' class='btn btn-secondary' id='btn' style='margin-left:0%;color:gray' onclick='"location.href='$child_page''">
KEEP READING <span class='glyphicon glyphicon-chevron-right' style='color:gray'></span>
</button>";
echo "<a href='$child_page'>Link </a>";
双引号允许你按原样放置变量,而单引号则需要做一些额外的步骤。
试试这个
<?php
$child_page = 'https://www.google.com';
echo '<button type="button" class="btn btn-secondary" id="btn" style="margin-left:0%;color:gray" onclick="location.href=''' . $child_page . '''">
KEEP READING <span class="glyphicon glyphicon-chevron-right" style="color:gray"></span>
</button>';
echo "<a href='$child_page'>Link </a>";
?>