我正在尝试创建一个网站,该网站基本上有很多按钮,这些按钮将在单击时执行特定的 PHP 文件,并在同一屏幕上的空框中显示其结果。这些 PHP 文件位于test_scripts与index.php.
我认为显而易见的步骤是创建一个循环来迭代这些文件并动态创建它们的用户界面。所以我在中间写了下面的PHP代码index.php
#Index.php
...
<?php
$dir_itr = new DirectoryIterator("test_scripts");
foreach ($dir_itr as $file) {
if ($file->isFile()) {
$filename = $file->getFilename();
$formattedFileName =
'<button
class="box button is-large is-fullwidth is-primary is-light"
onclick="loadScriptFileData($filename)">
$filename
</button>';
print $formattedFileName;
}
}
?>
...
这loadScriptFileData()是一个用 head 中的 script 标签编写的 JavaScript 函数:
<!--index.php-->
<script>
function loadScriptFileData(filename) {
alert(filename);
}
</script>
foreach循环运行正常,但 JavaScript 函数和生成的 HTML 无法正常工作。页面上有预期数量的按钮,但每个按钮只有名称作为单词"$filename",而不是实际预期的文件名。JavaScript 的情况更糟,它直接不起作用并在控制台中给出错误,如下所示Uncaught ReferenceError: $filename is not defined at HTMLButtonElement.onclick ((index):71)
为什么 $variable 没有转换为字符串?我什至尝试了 toString() 函数,但仍然不好。我做错了吗?
慕标5832272
小唯快跑啊
喵喵时光机
相关分类