所以我进行了大量搜索并找出了如何将 PHP 变量传递给 Javascript 函数,但是当我在代码中实现它时,而不是在alert();中获取变量;我得到的窗口 <?php echo $a ?>
和<?php echo $c ?>
希望这是我忽略的小事情,但我不知道为什么它不起作用,因为我从论坛上的回复中逐行复制了它,并且用户说它有效,而且我有一个 friend 说它它有效,但是当我自己运行代码(第二个[代码] [/代码])时,它返回相同的错误。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<?php
$a = 'Fatber Christmas';
$b = '27 Sunshine Street /n America';
$c = nl2br($b);
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Kenneth So Photography</title>
<link rel="stylesheet" href="kennethsostylesheet.css" type="text/css">
<link rel="shortcut icon" href="Photos/favicon.png" type="image/png">
<script type="text/javascript">
function test(a,b) {
alert(a);
alert(b);
}
</script>
<script type="text/javascript" src="picScript.js"></script>
</head>
<body>
<a onClick="test('<?php echo $a ?>', '<?php echo $c ?>');">LINK</a>
<div id="headerBar">
<div id="logo">
<a href="javascript:void(0)" ><img src="Photos/FinalizedLogo.png" alt="logo" height="100px" width="400px" onclick="setNum(1)"></a>
</div>
<div id="titleBar">
<p>
<a href="javascript:void(0)" onclick="setNum(1)">Home</a> |
<a href="javascript:void(0)" onclick="setNum(2)">Automotive</a> |
<a href="javascript:void(0)" onclick="setNum(3)">Nightlife</a> |
<a href="/about.html">About Me</a> |
<a href="/contact.html">Contact</a>
</p>
</div>
</div>
<div id="imageBox">
<div id="imageView">
</div>
<div id="imagePreview">
</div>
</div>
</body>
</html>
导致相同显示的独立代码
<?php
$a = 'Fatber Christmas';
$b = '27 Sunshine Street /n America';
$c = nl2br($b);
?>
<html>
<head>
<script type="text/javascript">
function test(a,b) {
alert(a);
alert(b);
}
</script>
</head>
<body>
<a onClick="test('<?php echo $a ?>', '<?php echo $c ?>');">LINK</a>
</body>
</html>
谢谢大家!!!
最佳答案
就语法而言,您的代码是正确的,但是 - 正如注释中所指出的 - 您始终需要为要输出到的介质(数据库、其他编程语言、html 等)准备变量。
问题是你的 php 没有被解析。
原因可能是:
- 您的服务器上没有启用 php;
- 您的文件名例如以
.html
结尾,而不是.php
,导致文件不被识别为 PHP 文件; - 您不是从服务器请求文件,而是从文件系统请求文件。
关于php - 将 PHP 变量传递给 Javascript 函数(特定代码错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13426609/