我有一个变量,我在php中调用它,默认情况下显示在用户的输入字段中,以进行一些计算,但用户可以更改该值。我正在使用javascript来获取值,但它没有更新。其值始终保持默认值。
嗯...这里有几件事...
首先,我们没有任何代码。所以我们不知道你想做什么。
所以我假设你说的是某种全局变量(如果你只是在脚本中的某个地方声明$foo = 10
你将无法获得它;脚本在页面输出时已经完成解析)。
因此,假设您将$_COOKIE['some_value']
作为要更改的变量。这个想法是你对某个 php 文件进行 ajax 调用,该文件将更新它。所以你可能有
//change_value.php
setcookie($_GET['cookie_name'], $_GET['new_value']);
你可以使用库进行ajax调用(jQuery在这里)
$.ajax({
url: 'change_value.php',
data: 'cookie_name=bar&new_value=' + new_value //new value is a variable in javascript,
success: function(data) {
alert("Success");
}
});
你可以在这里阅读更多关于ajax与jQuery的信息 http://api.jquery.com/jQuery.ajax/
上面的示例还取回 change_value.php
输出的任何返回数据。因此,您可以更新change_value.php以更改指定值,然后无论如何输出(新)值(以便您可以获取它)。
cookie,你可以直接使用javascript来做到这一点,但这只是一个例子。如果您有会话,则可以使用相同的方法。