【问题标题】:jQuery append PHP codejQuery 附加 PHP 代码
【发布时间】:2011-09-26 02:33:54
【问题描述】:

我想做的是这样的:

我有这个 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'); ?>");

效果很好……

一些提示?

【问题讨论】:

    标签: php jquery append


    【解决方案1】:

    php 在服务器端执行,生成 JavaScript 代码在客户端执行。你应该简单地用 JavaScript 实现你的函数:

    $('#div').append(function(dateSpec) {
        switch (dateSpec) {
        case 'Y' :
            return 'Year';
        case 'M' :
            return 'Month';
        case 'D' :
            return 'Day';
        }
    }(variable));
    

    【讨论】:

    • 嗯,我明白...问题是:它确实按照我的方式工作.. PHP 函数确实接收了参数 M,但在这种情况下它不会重新识别为相等.这就是问题
    • @Rafael 它确实有效,因为someFunctionPhp 会立即使用文字参数'"+variable+"' 调用。由于存在该(奇怪)值的情况,因此它根本什么都不做。除了 XHR 请求(和类似的调用),没有办法从 JavaScript 调用 php 函数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-12
    • 2013-03-02
    • 1970-01-01
    • 2018-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多