在JavaScript中显示变量
Display variable inside JavaScript
我想用变量更改脚本中的超链接。这是FB SDK,我想用用户在我的网站上选择的语言显示SDK。
变量是{$lang_fb}
,如果我在普通php中使用它,它将返回正确的结果(此处:en_US)。
如果在纯HTML页面的脚本中使用该变量,则不会有任何结果。
脚本:
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/{$lang_fb}/sdk.js#xfbml=1&version=v2.5&appId=01234567890";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
<script>
导致页面中的代码相同
我能做什么?
如果您在PHP脚本中,则需要放置PHP标记或转义字符串。
方式一
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/<?php echo {$lang_fb} ?>/sdk.js#xfbml=1&version=v2.5&appId=01234567890";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
第二条路
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/".{$lang_fb}."/sdk.js#xfbml=1&version=v2.5&appId=01234567890";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
如果您不共享更多代码,我们将无法查看发生了什么。
解决方案:
js.src = "//connect.facebook.net/{/literal}{$lang_fb}{literal}/sdk.js#xfbml=1&version=v2.5&appId=1234567890";
谢谢你的帮助!!!
由于您使用的是与PHP无关的文件扩展名,因此需要设置PHP来处理此扩展名。
对于apache,您可以使用文件.htaccess
:来完成此操作
AddHandler application/x-httpd-php .tpl
当然,你还需要require
——创建{$lang_fb}
的Facebook SDK。
$lang_fb
是一个php变量,在javascript中不起作用。您是否将脚本标记嵌入到php文件中?如果是,那么您可以简单地使用以下内容:
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/"+<?php echo $lang_fb; ?>+"/sdk.js#xfbml=1&version=v2.5&appId=01234567890";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
相关文章:
- 节点.js将变量显示为 HTML
- 使用eval()定义变量显示未定义的错误
- 将Flask中的变量显示为javascript代码时出错
- 为什么我的 ajaxurl 变量显示为未定义
- HTML 下拉列表到 Javascript 变量显示错误
- 变量显示为未定义
- ASP.Net Ajax - JavaScript:如何在HTML中使用返回的变量显示
- 如何使用变量显示来自 URL 的图像来创建 URL
- Javascript 实例变量显示为未定义
- 按图像计数变量显示图像列表
- 如何根据变量显示一定数量的输入字段
- 基于true/false变量显示/隐藏进度条
- Cognos Prompt页面提示使用render变量显示/隐藏
- 为什么变量显示为未定义
- javascript变量显示以前的值
- Firefox没有处理keyCode's.它在调试器中将变量显示为矩阵
- 为输入值设置变量显示对象对象消息
- 在angular.js中通过作用域变量显示或追加元素
- JavaScript -全局变量显示为未定义
- 如何使用javascript变量显示图像