Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript函数中的PHP变量输出变量而不是值_Php_Javascript_Jquery - Fatal编程技术网

Javascript函数中的PHP变量输出变量而不是值

Javascript函数中的PHP变量输出变量而不是值,php,javascript,jquery,Php,Javascript,Jquery,我想做的是,只有当我用id=“$project['slug']”单击div时,它才会在div中加载iframe。 因此,我从iframe中删除了src属性,并将其添加到onclick事件中。 我的HTML/PHP中有这个: <div class="box" id="<?=$project['slug']?>" onclick="load_frame();"> <iframe id="frame_<?=$project['slug']?>" fra

我想做的是,只有当我用
id=“$project['slug']”单击
div
时,它才会在
div
中加载
iframe
。 因此,我从
iframe
中删除了
src
属性,并将其添加到
onclick
事件中。 我的
HTML/PHP
中有这个:

<div class="box" id="<?=$project['slug']?>" onclick="load_frame();">
    <iframe id="frame_<?=$project['slug']?>" frameborder="0"></iframe>
</div>
不幸的是,当我检查
iframe
时,它显示:
src=”“
,而不是变量所持有的值。 你知道我做错了什么吗? 谢谢大家!

您可能没有在服务器上启用。请尝试使用标准PHP:

<?php echo $project['slug']; ?>

您可能没有在服务器上启用。请尝试使用标准PHP:

<?php echo $project['slug']; ?>

jQuery是一种客户端语言,只有在呈现DOM元素后才能访问它们。因此,您需要做的是将
$project['video']
变量存储在一个隐藏字段中,然后使用该字段的
id
访问渲染数据


另外,我注意到您应该使用
jQuery是一种客户端语言,只有在呈现DOM元素后才能访问它们。因此,您需要做的是将
$project['video']
变量存储在一个隐藏字段中,然后使用该字段的
id
访问渲染数据


另外,我注意到您应该在html页面上使用
添加隐藏输入

 <input type="hidden" id="hidsource" value="<?php echo $project['video']" />
}


希望这能起作用

在html页面上添加隐藏输入

 <input type="hidden" id="hidsource" value="<?php echo $project['video']" />
}


希望这能奏效

你在使用外部js吗???看来你混合了asp和php语法。改变echo@NipunJain是的,我正在使用外部js。想想你在做什么。js文件按原样传递到浏览器,而不是通过PHP传递(默认情况下),因此无法将PHP变量插入其中。将视频URL放在一个文件夹中。@DCoder非常感谢您的提示!今天我学到了一些东西:)它也是这样工作的,但我接受了阿米斯,因为他提供了一个更复杂的答案。非常感谢。你在使用外部js吗???看起来你混合了asp和php语法。改变echo@NipunJain是的,我正在使用外部js。想想你在做什么。js文件按原样传递到浏览器,而不是通过PHP传递(默认情况下),因此无法将PHP变量插入其中。将视频URL放在一个文件夹中。@DCoder非常感谢您的提示!今天我学到了一些东西:)它也是这样工作的,但我接受了阿米斯,因为他提供了一个更复杂的答案。非常感谢。哎呀,忘了将iframe语句更改为使用
slug
var.Updated!哎呀,忘了将iframe语句更改为使用
slug
var.Updated!
 <input type="hidden" id="hidsource" value="<?php echo $project['video']" />
function load_frame() {
id = location.hash.replace('#', '');
$('#frame_'+id).attr("src", $('input#hidsource').val());