从 php 函数用 HTML 更新innerHTML? (使用Xajax)

发布于 2024-10-19 00:18:57 字数 567 浏览 3 评论 0原文

我成功地通过 xajax 更新了 DIV 的innerHTML(当我单击链接时),但仅当我在函数本身中分配 HTML 时,而不是当我从其他函数调用它时。

解释

  // For the sake of testing
$output=rand(20,40);

  // Add new HTML to container through $output
$ajax_resp->assign('div_container','innerHTML', $output);

return $ajax_resp;

这工作正常。当我通过单击链接调用此函数时,容器会使用随机数进行更新。但是,当我将 $output 更改为

$output=$compile->show('text');

Which is (simplified)

function show($var) { echo $var; 。

它没有显示它 函数 show 在 xajax 之外完美运行。有什么建议吗?

I'm successfully updating the innerHTML of a DIV through xajax (when I click a link) but only when I assign HTML in the function itself, not when I call it from a different function.

To explain

  // For the sake of testing
$output=rand(20,40);

  // Add new HTML to container through $output
$ajax_resp->assign('div_container','innerHTML', $output);

return $ajax_resp;

This works fine. When I call this function through clicking the link, the container updates with a random number. However when I change $output to

$output=$compile->show('text');

Which is (simplified)

function show($var) { echo $var; }

It does not show it. The function show works perfectly outside of xajax. Any suggestions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦巷 2024-10-26 00:18:57
function show($var) { echo $var; }

该函数不返回任何内容,而是将值回显到屏幕上。但是,您可能希望大多数函数返回一个值,以便它们可以使用该值。基本上,当你这样做时,

$output=$compile->show('text');

它不会从 show 方法获得任何输入,因为 show 不返回任何值。我认为如果你将其更改为以下内容:

function show($var) { return $var; }

它会起作用。

function show($var) { echo $var; }

This function doesn't return anything, it echo's the value to the screen. However, most functions you probably want to return a value, so they can work with it. Basically, when you do

$output=$compile->show('text');

It will get no input from the show method, because show doesn't return any value. I think if you change it to the following:

function show($var) { return $var; }

It will work.

宣告ˉ结束 2024-10-26 00:18:57

您是否尝试过更改 function show($var) { echo $var; } 到 function show($var) { return $var; }。应该可以解决你的问题

Have you tried to change function show($var) { echo $var; } to function show($var) { return $var; }. Should solve your problem

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文