【问题标题】:assign php variable to javascript variable将php变量分配给javascript变量
【发布时间】:2023-03-26 11:46:01
【问题描述】:

如何使用 php 变量为 javascript 变量赋值

 $(function(){
    $("select[name=myselectlist]").change(function(){
        var id = $(this).val();
        if(id != 0) {       
            $.post("ajax.php", {"id":id}, function(){
                var data = "somedatahere";
                document.getElementById("namesurname").value = data;
            });
        }
    });
});

上面的代码在没有 php 的情况下可以完美运行。但是,我每次都需要从 mysql 分配“var data”。

【问题讨论】:

标签: javascript php jquery mysql ajax


【解决方案1】:

1) 你可以像 Shadowfax 写的那样做,但更简单:

var data = '<?=$dbResult?>';

2) 更正确。使用 PHP 中的 json_encode 函数将结果传递给 AJAX 响应,以便您可以重写 JavaScript 代码块,如下所示:

...
$.post("ajax.php", {"id":id}, function(response){
    $("#namesurname").val(response.data);
});

例如,您在后端的 PHP 代码块可能如下所示:

....
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) AND strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest')) {
    echo json_encode(array('data' => $dbResult));
}

【讨论】:

    【解决方案2】:

    如果此 javascript 代码在 php 文件中,那么您可以简单地使用代码中更新的 php 变量:-

    <?php
    // assign a value
    $data = 'your data here';
    ?>
    
    $(function(){
        $("select[name=myselectlist]").change(function(){
            var id = $(this).val();
            if(id != 0) {       
                $.post("ajax.php", {"id":id}, function(){
                    var data = "somedatahere";
                    document.getElementById("namesurname").value = "<?php echo $data;?>";
                });
            }
        });
    });
    

    【讨论】:

      【解决方案3】:

      如果你的 php var 在你有这个函数的文件的范围内,你可以这样做:

      var data = "<php echo $myvar; ?>";
      

      【讨论】:

      • 注意:即使 php var 不属于这里,您也可以类似地分配 SESSION 变量
      • idk 为什么但它对我不起作用,我的意思是当我使用 like 时; document.getElementById("namesurname").value = ; namesurname id 的文本字段的值不会改变。
      • 尝试使用引号中的 php var。如果没有工作,交叉检查 $data['name'] 是否有效
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多