Javascript 当通过点击按钮触发时,所有模态显示相同的内容
每次用户点击一个按钮,一个模态就会被触发,但是无论用户点击哪个圆圈(按钮),所有模态都会显示第一个圆圈的内容。如何使每个模式仅显示用户单击的圆圈的内容 我的代码:Javascript 当通过点击按钮触发时,所有模态显示相同的内容,javascript,php,jquery,html,bootstrap-modal,Javascript,Php,Jquery,Html,Bootstrap Modal,每次用户点击一个按钮,一个模态就会被触发,但是无论用户点击哪个圆圈(按钮),所有模态都会显示第一个圆圈的内容。如何使每个模式仅显示用户单击的圆圈的内容 我的代码: <?php require_once 'Net/SSH2.php'; require_once 'phpseclib1.0.10/Crypt/RSA.php'; $config = require 'config.json'; $log = 'logfile.txt'; if(is_array($config)){ for
<?php
require_once 'Net/SSH2.php';
require_once 'phpseclib1.0.10/Crypt/RSA.php';
$config = require 'config.json';
$log = 'logfile.txt';
if(is_array($config)){
foreach($config as $cred){
$ssh = new Net_SSH2($cred['ip'], $cred['port']);
$key = new Crypt_RSA();
$key->loadKey($cred['key']);
echo ($cred['name']); //get Raspberry PI name from config file
if (!$ssh->login('pi', $key)){
file_put_contents($log, "[".date('Y-m-d H:i:s')."]Login Failed for {$cred['ip']}\n", FILE_APPEND|LOCK_EX);
continue;
}
$output = $ssh->exec('tail -1 /var/log/playlog.csv');
$array = explode (',' , $output);
if (end($array) >= 0){
//trigger modal with button
echo '<div id="circleGreen" class="btn btn-primary" data-toggle="modal" data-target="#myModal"></div>';
//modal
echo '<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labeledby="exampleModalLabel" aria="hidden">';
echo '<div class="modal-dialog" role="document"';
//modal content
echo '<div class="modal-content">';
echo '<div class="modal-header">';
echo '<h4 class="modal-title" id="exampleModalLabel">Location: '.($cred['name']).'</h4>';
echo '<button type="button" class="close" data-dismiss="modal" aria-label="Close">';
echo '<span aria-hidden="true">×</span>';
echo '</button>';
echo '</div>';
echo '<div class="modal-body">';
echo '<p>No issues currently reported.</p>';
echo '<p>Currently Playing: '.$array[1].'</p>';
echo '</div>';
echo '<div class="modal-footer">';
echo '</div>';
echo '</div>';
echo '</div>';
echo '</div>';
echo '</div>';
}else{
echo '<div id="circleRed" class="btn btn-primary" data-toggle="modal" data-target="#myModal"></div>';
//echo '<p>Issues: '.$array[2].'</p>';
};
}};
?>
而不是像这样的东西
。。。
如果(结束($array)>=0){
//带按钮的触发模式
回声';
//模态
回声';
echo“你不能将你的PHP与HTML分开吗?不,我需要将我的PHP保存在我的HTML代码中。我的意思是,当它是HTML时,使用?>这里的HTML ID必须在HTML文档中是唯一的。你在一个循环中有这个ID,所以你要多次输出相同的ID。可能重复感谢你的示例-我肯定会sepa一旦一切正常,我就可以从HTML中为我的PHP打分,因为它看起来更干净了!但是现在-我做了你在底部提到的更改,在我点击一个图标后,我再也不能打开一个模式了circle@sar实际上,您应该在循环中使用的所有id的末尾添加$key
变量(例如changearia labeledby)=“exampleModalLabel”
至aria labeledby=“exampleModalLabel.$key.”"
和
到
以及每个id都是一样的。但这不是它不打开的原因。@sar您是否也更改了红色圆圈中的数据目标
?这可能是原因。我编辑了我的答案。我在使用id的地方添加了$key
变量,但我仍然无法打开模式。我不确定在出问题之前?