我试图将一些PHP嵌入到javscript函数中,该函数从下拉列表中的onChange调用。 javascript函数在.js文件中,我可以得到DDL来调用函数,但是我无法使用函数来处理php ...最终我将使用在DDL中选择的值来访问数据库从那里填充其他字段,现在我正在尝试使用php:
function controllerType(){
alert('outside php');
<?php
$message = "inside php";
echo "alert('$message');";
?>
}
该函数打印第一个警报,但不打印php中调用的警报。
答案 0 :(得分:4)
默认情况下,您的网络服务器可能不会在.js
个文件中查找PHP代码。您必须告诉它要么在这些文件中查找PHP,要么将文件扩展名更改为.php
。
如果您想尝试前者并且您正在运行Apache Web服务器,请尝试将以下行添加到.htaccess
文件中:
AddHandler application/x-httpd-php .js
答案 1 :(得分:1)
尝试以下
function controllerType() {
alert('outside php');
alert('<?php echo $message; ?>');
}
答案 2 :(得分:0)
答案 3 :(得分:0)
<?php
$message = "inside php";
?>
<script type="text/javascript">
function controllerType(){
alert('outside php');
alert(<?=$message;?>);
}
</script>
答案 4 :(得分:0)
我认为问题可能是您的PHP解析器没有评估您的javascript。 您可能必须为该函数创建一个单独的文档,该文档以.php结尾或使用.htaccess(假设您使用的是apache)告诉您的php处理程序解析.js文件
答案 5 :(得分:0)
从您的下一句话开始:
最终我将使用该值 在DDL中选择以访问数据库和 从那里填充其他字段
这听起来好像是在尝试让PHP代码在运行时在浏览器中执行。 PHP是一种服务器端语言,您不能像在尝试一样在javascript文件中使用它。
您需要让javascript函数通过HTML表单或通过AJAX将下拉列表中的值发布到PHP页面。
如果我误解了你,请原谅我。