当前位置: 首页 > 面试题库 >

将PHP变量传递给Javascript的最佳方法是什么?

子车宏浚
2023-03-14
问题内容

目前,我在隐藏的输入字段中回显某些变量,并在需要时使用Javascript读取它们。

我和一个同事现在正在考虑使用PHP生成一个额外的Javascript文件,该文件仅包含Javascript的所有变量。这样,变量已经存在,HTML中没有多余的代码。

有什么好的方法可以将变量从PHP传递到Javascript?我们的解决方案听起来如何?


问题答案:

通用数据传递

JavaScript常用的交换格式是JSON,使用json_encode。这样的PHP文件:

<?php
    $data = array("test" => "var", "intvalue" => 1);
    echo json_encode($data);
?>

然后返回这样的JavaScript对象文字:

{
    "test" : "var",
    "intvalue" : 1
}

您可以将其直接回显到页面上的JavaScript变量中,例如:

var data = <?php echo json_encode($data)?>;

…或通过Ajax请求(例如,使用jQuery的getJSON)。

输出到标签上的属性

如果只需要将字符串输出到标签上的属性,请使用htmlspecialchars。假设一个变量:

<?php
$nifty = "I'm the nifty attribute value with both \"double\" and 'single' quotes in it.";
?>

…您可以这样输出:

<div data-nifty-attr="<?php echo htmlspecialchars($nifty)?>">...</div>

…或者如果您使用短标签:

<div data-nifty-attr="<?= htmlspecialchars($nifty)?>">...</div>


 类似资料:
  • 问题内容: 我有一个PHP会话变量,在整个会话过程中仍然有效。在开头部分,我包含了我的JavaScript文件。 如果需要以下内容,如何将会话变量传递到JavaScript文件中。 由于无法在JavaScript文件中识别出,因此上面的代码不起作用。因此,我必须放入PHP文件本身,但是如何将其保留在JavaScript文件中? 问题答案: 在您的PHP文件中,您可以将用户设置为全局变量: 在包含外

  • 问题内容: 我有一个用JS计算的值,希望将其作为输入表单的一部分传递给PHP脚本。我如何将JS值的JS值作为POST参数获取? 基本上,在提交时,我需要将var通过post传递到下一个脚本。 想到的第一个想法是创建一个不可见的输入表单,该表单中包含值并与该表单一起输入,这可能吗? 问题答案: 是的,您可以在JavaScript代码中使用和设置该隐藏字段的值,以便将其与其他表单数据一起发布。

  • 问题内容: 我是 AngularJS的 新手, 并且喜欢到目前为止所看到的内容,尤其是模型/视图绑定。我想利用它来构建一个简单的“添加到购物篮”功能。 到目前为止,这是我的控制器: 这是我的HTML: 现在这可行,但是我高度怀疑这是在模型中创建新产品对象的正确方法。但是,这正是我完全缺乏AngularJS经验的地方。 如果不是这样做的话,什么是最佳实践? 问题答案: 您可以创建购物篮服务。通常在J

  • 本文向大家介绍如何将JavaScript变量传递给PHP?,包括了如何将JavaScript变量传递给PHP?的使用技巧和注意事项,需要的朋友参考一下 您可以在PHP的同一页面上轻松获取JavaScript变量值。尝试以下代码L。

  • 问题内容: 我有Google地图提供的JavaScript值,需要将其保存在MySQL数据库中。 其实我有变量 我需要将该变量传递给PHP变量lugar 问题答案: 如果要在页面转换时进行操作,则可以通过表单或在URL中传递它,然后仅使用或接收变量。 如果您需要无缝完成它,那么您可能需要考虑使用AJAX。

  • 问题内容: 我试图将变量从我的javascript代码传递到服务器端PHP代码。我知道这必须通过ajax调用来完成,我相信我已经正确地完成了,但是访问变量是从我的ajax传递到我的php时遇到的麻烦,因为我是php的新手。到目前为止,这是我的代码: 我正在尝试将我的JavaScript变量“ userID”传递给php($ userID),但是在此过程中我出错了。谢谢您的帮助! 问题答案: 将这样