【发布时间】:2017-06-01 01:43:59
【问题描述】:
我的 javascript 中有一个 percent 变量,该变量从 PHP 传递结果。
这是javascript:
test.js
console.log(percent); //* //variable was passed from PHP
function displayLoading() {
console.log(percent); //**
}
如果我使用 *console.log(percent) out 函数,它将在控制台中打印出percent 的值。但如果我在displayLoading 函数中使用**console.log(percent),它将打印输出为undefined。
如何在函数内部访问外部variable?
我试过这种方法
var funcOne = function() {
this.sharedVal = percent;
};
var funcTwo = function() {
console.log(funcOne.sharedVal);
};
并将 print_out undefined 输入控制台日志。
和
var per = percents
console.log(per); //this line print_out the value into console log
function displayLoading() {
console.log(per); //this print_out "undefined" into console log.
var myPercent = per;
console.log(per); //and also print_out "undefined" into console log.
}
上面的两个代码都不适合我,有人知道另一种方法吗? 任何帮助表示赞赏,谢谢:)
已编辑:
上面javascript里面的percents,我是从这段代码中得到的:
headerController.php
<?php
$percent = $percent + 10;
?>
<script type="text/javascript">
var percents = <?= $percent; ?>;
</script>
<script type="text/javascript" src="../../web/js/test.js"></script>
主要问题找到了,我之所以得到undefined是因为我在变量从php传递过来之前打印了percents。
如何将 php 变量直接传递给 javascript 文件(本例中为 test.js)中的函数?
【问题讨论】:
-
您在哪个语句中指定百分比值?
-
也许,您在本地分配变量,尝试在外部分配它然后使用 console.log(window.percent);函数内部
-
I've tried this way- 除了你没有,不是真的 -
这个小代码sn -p 不足以判断问题。如果 percent 是一个全局变量(看不到它是如何定义的,所以谁知道),那么第一个代码 sn-p 应该可以正常工作
-
对不起,我已经更新了我的问题。检查一下:)谢谢
标签: javascript php jquery variables scope