我正在尝试在我的网站上使用JavaScript音频播放器(http://wpaudioplayer.com/standalone/)。我尝试将PHP变量传递给JavaScript,但它似乎无法正常工作。 JavaScript将带有匹配id的html段落替换为flash mp3播放器。
编辑:更新了问题
如果我直接传递了网址,那么MP3播放器会播放,但是当我通过变量传递它时,它就不会播放。
这有效
<p id="audioplayer_<?php echo $i ?>">Install flash to use mp3 player</p>
<script type="text/javascript">
var id = "audioplayer_" + <?php echo $i ?>;
AudioPlayer.embed(id, {soundFile: "http://site.com/mp3file.mp3"});
</script>
但这不是
<p id="audioplayer_<?php echo $i ?>">Install flash to use mp3 player</p>
<script type="text/javascript">
var id = "audioplayer_" + <?php echo $i ?>;
var url = "<?php echo $url ?>";
AudioPlayer.embed(id, {soundFile: url});
</script>
$ url变量的值为http://site.com/mp3file.mp3
答案 0 :(得分:2)
你忘了在网址周围添加引号,因为对于JavaScript来说它是一个字符串。将您的PHP代码更改为
<p id="audioplayer_<?php echo $i ?>">Install flash to use mp3 player</p>
<script type="text/javascript">
var i = <?php echo $i ?>;
var url = "<?php echo $url ?>";
AudioPlayer.embed("audioplayer_" + i, {soundFile: url});
</script>
答案 1 :(得分:0)
如果您不需要在任何其他地方使用变量,请不要使用它们并尝试此
<p id="audioplayer_<?php echo $i ?>">Install flash to use mp3 player</p>
<script type="text/javascript">
AudioPlayer.embed("audioplayer_<?php echo $i; ?>", {soundFile: "<?php echo $url; ?>"});
</script>
使用此代码可以避免“变量问题”