如何使用php从div元素的所有链接中删除href属性?
这样的事情:
if($condtion = "true"){
echo '<a href="" class="no-link">Please login</a>';
}
else{
echo '<a href="www.google.com" class="yes-link">Admin Section</a>';
}
我正在寻找解决方案,但我发现的所有内容都是使用jquery解决方案
像这样:$(selector).removeAttr(attribute)
谢谢
答案 0 :(得分:1)
这里检查条件是否为真然后回显链接,否则保持链接空白。当然,这简直就是解决你的问题。
假设在php块之外:
<a href="<?=(!$conditions ? 'www.google.com':'' ?>" class="yes-link">Admin Section</a>
或者在php块中:
echo '<a href="' . (!$conditions ? 'www.google.com':''.'" class="yes-link">Admin Section</a>';
答案 1 :(得分:0)
您可以使用preg_replace()来实现此目的。示例代码:
$html = preg_replace('#<a class="no-link">(.*?)</a>#', '', $html);
答案 2 :(得分:0)
定义和用法
removeAttr()方法从所选元素中删除一个或多个属性。
$(function() {
$("a").removeAttr("href");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<div>
<a href="" > Click Me First </a><br>
<a href="" > Click Me Second </a>
</div>
&#13;
答案 3 :(得分:0)
$string1 = "<div><a href='a.php'>a</a><br><a href='b.php'>b</a><br><a href='c.php'>c</a><br><a href='d.php'>d</a></div>";
//$string2 = preg_replace("/'(.*?)'/i", '', $string1); //Uncomment this if you want empty the href value only
$string3 = preg_replace("/ href='(.*?)'/i", '', $string1); //Use this if you want to completely remove the href attribute with value