javascript 如何在PHP中使用多个变量时更改href?

r8xiu3jd  于 2023-06-04  发布在  Java
关注(0)|答案(2)|浏览(175)

所以前两天我都没找到要找的东西。
我的数据库中有一个表“tracks”。因此,我可以显示从“轨道”的“演示”字段,这是一个音频文件“网址”。

<?= $tracks['demo']; ?>

我有多个网址,但我需要更换的a href

<a href="<?php echo $tracks['demo'];?>"

以合乎逻辑的方式。
简单地说,就像我想点击按钮1,将URL 1加载到这个带有ID的href中,标题字段来自该曲目。
当您按下按钮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循环的最新输出...}

jhdbpxl9

jhdbpxl91#

我不知道你是怎么换的
为什么不在函数中传递音频。像这样

<button type="button" onclick="play(<?= $tracks['demo'] = $audiourl ; ?>)">Play</button>

为锚标记分配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
rkue9o1l

rkue9o1l2#

所以我尝试了很多东西,但我有很多问题的球员,它的js文件使用相同的id的等等。
我尝试的新逻辑似乎奏效了:

<form action="" method="POST">
          <input type="submit" value="Play" name="Play">
          </form>

          <?php 

             if (isset($_POST["Play"]))
             {

              echo $tracks['demo'];
          }else{
            echo '&nbsp;';
          }
          ?>

还有更多的事情发生,但我试图写下来,就像这样简单,以显示逻辑。所有的跟踪网址是隐藏的,当页面加载时,有一个空的$audiourl默认加载在a href从我的音频播放器。通过点击播放按钮,我显示了源代码中的URL,但不在网站上。然后最新的$audiourl变量更改为该值。

相关问题