所以我这两天没有找到我要找的东西。
需要明确的是,我的数据库中有一个表“tracks”。 所以我可以从“tracks”显示“demo”字段,它是一个音频文件“URL”..
<?= $tracks['demo']; ?>
我有多个 URL,但我需要替换 a href
<a href="<?php echo $tracks['demo'];?>"
以合乎逻辑的方式。
简单来说,就像我想点击加载的按钮 1 URL 1 进入该 href,其中包含该轨道的 ID、标题字段。
当您按下按钮 2 时,您需要加载另一个 URL 并将 URL 1 替换为 url2。
我尝试了很多方法,包括 JavaScript,但它不起作用。
现在的问题是,当我列出 4 个项目时,它总是加载我在源代码中发布的最新“URL”。
当我回显 <?php echo $tracks['demo]; ?>
时在所有项目上,我都可以看到正确的 URL,因此替换 URL 的功能是我的问题。
*** 我基本上想在我在网站页脚中制作的播放器中加载许多 mp3 URL。它的工作原理是对 URL 字段中的 URL 进行硬编码,但这不是它应该的样子...***
代码:
<?php while($tracks = mysqli_fetch_assoc($muziek)) : ?>
<div class="col-md-2 viny" id="muziek">
<h4><?= $tracks['title']; ?></h4>
<img src="<?= $tracks['img']; ?>"
alt=" <?= $tracks['title']; ?> />
<p class="artist">Artist: <?= $tracks['artist']; ?></p>
</div>
<?= $tracks['demo'] = $audiourl ; ?>
<button type="button" onclick="play">Play</button>
</div>
<?php endwhile; ?>
***此循环完美适合所有项目轨道完美列出***
在我的播放器中我有
<a href="<?php echo $audiourl;?>" ><?= $tracks['artist']; ?></b> - <?= $tracks['title']; ?></a>
function play(){
我不擅长 JS...这是我的问题,因为它现在加载 PHP 循环的最新输出... }
最佳答案
我不知道你是如何替换它的,但是
为什么不在函数中传递音频。这里就像这样
<button type="button" onclick="play(<?= $tracks['demo'] = $audiourl ; ?>)">Play</button>
为 anchor 标记分配一个 id
<a id="someId" href="<?php echo $audiourl;?>" ><?= $tracks['artist']; ?></b> - <?= $tracks['title']; ?></a>
在播放功能中,你会像这样收到它
function play(audioUrl){
}
并在播放功能中像这样更改href
如果您使用jquery
$('#someId').attr("href", audioUrl);
有时上述方法不起作用。不记得为什么,但如果这不起作用,请尝试这个
$('#someId').href = audioUrl
如果您使用的是 JavaScript
document.getElementById('abcd').href = audioUrl
关于javascript - 在 PHP 中使用多个变量时如何更改 href?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46030363/