【发布时间】:2012-04-08 15:03:58
【问题描述】:
我正在使用它来加载 php 函数并将它们发送到插件中的 javascript,例如:
function me_nav_query_submit() {
$urlcall = nav_me_paises(); /* fetches a large html string */
$response = json_encode($urlcall); /* encode to display using jQuery */
//header( "Content-Type: application/json" );
echo $response;
exit;
}
我在页面上插入 html,使用
function(response) {
jQuery('#navcontainer').html(response);
}
一切正常,除了我在结果的最后得到一个“空”字符串。
json_encode() 文档讨论了非 utf-8 字符上的空字符串,但情况似乎并非如此。我也尝试过使用utf8_encode(),但没有成功。我在这里阅读了很多关于 SO 的其他问题,但其中大多数要么谈论一个给定的值以 null 或错误的 UTF-8 编码返回,在我的情况下一切正常,然后将“null”附加到末尾。
注意:建议在 WP Codex 中定义 header() 调用,但我评论它是因为它给出了“标头已发送”错误。
有什么想法吗?
EDIT这是调用的函数:
function nav_me_paises() {
?>
<ul class="navcategorias">
<?php $tquery = $_POST['wasClicked']; ?>
<?php $navligas = get_terms($tquery,'hide_empty=0') ?>
<?php foreach ($navligas as $liga) : ?>
<?php $link = get_term_link($liga); ?>
<li class="liga"><a href="<?php echo $link; ?>" ><?php echo $liga->name; ?></a></li>
<?php endforeach; ?>
</ul>
<?php
}
【问题讨论】:
-
首先我们需要查看您的 nav_me_paises() 并且对于标题,它应该在任何输出之前
-
已编辑以包含功能:)
-
请不要误会,但是阅读你的代码真的是一种折磨。
-
感谢您的提醒。不过,我真的很想做得更好。
标签: php jquery ajax json wordpress