我想做的是这样的事情:
我有这个javascript函数,通过调用PHP函数来附加一些内容。
<script>
function example(variable) {
$('#div').append("<?php someFunctionPhp('"+variable+"'); ?>");
}
</script>
在PHP函数中,我有类似的东西:
function someFunctionPhp($variable){
switch ($variable) {
case 'Y' :
echo 'Year'; break;
case 'M' :
echo 'Month'; break;
case 'D' :
echo 'Day'; break;
}
}
假设我打电话给example('M')
,我已经过测试,函数someFunctionPhp
确实接收M
作为参数的值(如果我只是echo $variable
里面它显示的函数M
),问题是:它没有进入case 'M'
情况。它不能将JS变量传递的M
识别为相等。
如果我在JS函数中更改代码行:
$('#div').append("<?php someFunctionPhp('M'); ?>");
它有效......
一些提示?
答案 0 :(得分:11)
php在服务器端执行,生成 JavaScript代码,在客户端执行。您只需在JavaScript中实现您的功能:
$('#div').append(function(dateSpec) {
switch (dateSpec) {
case 'Y' :
return 'Year';
case 'M' :
return 'Month';
case 'D' :
return 'Day';
}
}(variable));