背景:我正在为 WordPress 3.4.2 编辑一个自定义管理页面,这是我正在制作的插件的一部分。
我的 HTML 中有一小段 PHP 代码,用于检查变量是否存在,如果它有值则打印它:
<div id='ajax-response'>
<?php
if(isset($_infos) && !empty($_infos)){
echo $_infos;
}
?>
</div>
但是,当页面以意味着变量具有值的方式运行时,输出实际上不在该 #ajax-response 内部,<div>
而是直接在其上方,如下所示:
<div id="message" class="updated fade"><p>Download display details updated.</p></div>
<div id='ajax-response'></div>
#ajax-response 的全部意义<div>
在于包含来自页面本身和任何 AJAX 调用的所有反馈,因此它们都以相同的样式显示在一起 - 并且都可以轻松地从页面中删除 - 所以这个很烦人。
最奇怪的是,当我查看源代码时,<div>
它应该在 #ajax-response 中,但在 Chrome 的检查器中,当被 Javascript 引用时,它被视为在 .ajax 响应之外<div>
。
任何想法为什么会发生这种情况?