假设我有以下代码,如果函数为空,如何隐藏DIV?
类似地,如果函数为空,如何显示另一个DIV?
break
这是我的功能,仅供参考(它在wordpress中返回分类法的术语元字段):
continue
答案 0 :(得分:0)
检查函数是否返回某些内容,然后显示div:
<?php
$name = name5();
if ($name) {
?>
<div class='box12'>
<h1>text</h1>
<p><?php echo htmlentities($name); ?></p>
</div>
<?php
}
?>
我还清理了您的h1和p结尾标签。包含htmlentities
调用是为了避免有人可以在其名称中插入HTML标记并通过它们执行javascript等问题。
要显示不同的消息div,可以使用else
(或如果结果只为空则只显示div,则可以使用!$name
):
<?php
$name = name5();
if ($name) {
?>
...
<?php
} else {
?>
<div>shown if empty</div>
<?php
}
?>
答案 1 :(得分:0)
服务器代码必须为客户端JavaScript代码吐出一些东西。更改您的代码:
<p><?php echo name5(); ?><p/>
类似于:
<p>
<?php if (!name5()){ ?>
<script>
$(".box12").hide(); // asuming you are using jQuery
</script>
<?php } ?>
<p/>
答案 2 :(得分:0)
使用IF
语句包装函数的返回结果
<?php
$result = name5();
if ($result && $result !== '') { ?>
<div class='box12'>
<h1>text<h1/>
<p><?php echo $result ?><p/>
</div>
<?php } ?>
答案 3 :(得分:-2)
您可以尝试这些方法。
1-
<div class="box12">
<h1>text</h1>
<?php if(function_exists('name5')) { ?>
<p><?php echo name5(); ?></p>
<?php } ?>
</div>
2-
<div class="box12">
<h1>text</h1>
<?php if(name5()) { ?>
<p><?php echo name5(); ?></p>
<?php } ?>
</div>
3-
<div class="box12">
<h1>text</h1>
<?php $css = (name5()) ? "block":"none"; ?>
<p style="display:<?=$css?>" >
<?php echo name5(); ?>
</p>
</div>