HTML 模态框未弹出
HTML Modals is not pop uping
我正在使用 PHP 和逻辑构建应用程序,
- 正在打开两个文件。
- 一个文件值显示菜单,回显到浏览器中。
- 如果我们点击任何菜单,需要打开一个包含第二个文件的值的模式。
我刚刚用 while 循环进行了迭代。
问题是...
第一个文件中的菜单正在回显。但是,模态仅适用于最后一个菜单。
当我检查时,创建了菜单和模式。
https://postimg.cc/crQ8JCr5 - 检查截图
$myfile1 = fopen("fisrt-file.dat", "r") or die("Unable to open file!");
$myfile2 = fopen("Second-file.dat", "r") or die("Unable to open file!");
while(!feof($myfile1)) {
$fistFile = fgets($myfile1);
$seconfFile = fgets($myfile2);
echo "<div class='one-by-three1'><div class='course-card1' data-toggle='modal' data-target='#".$seconfFile."'><p class='e-c-head'>".$fistFile."</p></div></div>";
echo "<div class='modal fade' id='".$seconfFile."' tabindex='-1' role='dialog' aria-labelledby='exampleModalCenterTitle' aria-hidden='true'>
<div class='modal-dialog modal-dialog-centered' role='document'>
<div class='modal-content'>
<div class='modal-header'>
<h5 class='modal-title' id='exampleModalLongTitle'>".$fistFile."</h5>
<button type='button' class='close' data-dismiss='modal' aria-label='Close'>
<span aria-hidden='true'>×</span>
</button>
</div>
<div class='modal-body'>
<p>Second file element</p>
</div>
<div class='modal-footer'>
<button type='button' class='btn btn-secondary' data-dismiss='modal'>Close</button>
</div>
</div>
</div>
</div>";
}
fclose($myfile1);
fclose($myfile2);
我使用了 bootstrap 模式。
菜单将数据目标作为第二个文件值传递。
我看到你已经改用 accordion 但正要告诉你它不起作用的原因所以我会继续以防它帮助其他人。
原因是因为 fgets 读取的行 包括 换行符。因此,分配给模态的 ID 包含换行符,但文件中没有换行符的最后一行除外。
要使其正常工作,只需像这样 rtrim 行:
$fistFile = rtrim(fgets($myfile1));
$seconfFile = rtrim(fgets($myfile2));
我正在使用 PHP 和逻辑构建应用程序,
- 正在打开两个文件。
- 一个文件值显示菜单,回显到浏览器中。
- 如果我们点击任何菜单,需要打开一个包含第二个文件的值的模式。
我刚刚用 while 循环进行了迭代。 问题是... 第一个文件中的菜单正在回显。但是,模态仅适用于最后一个菜单。
当我检查时,创建了菜单和模式。 https://postimg.cc/crQ8JCr5 - 检查截图
$myfile1 = fopen("fisrt-file.dat", "r") or die("Unable to open file!");
$myfile2 = fopen("Second-file.dat", "r") or die("Unable to open file!");
while(!feof($myfile1)) {
$fistFile = fgets($myfile1);
$seconfFile = fgets($myfile2);
echo "<div class='one-by-three1'><div class='course-card1' data-toggle='modal' data-target='#".$seconfFile."'><p class='e-c-head'>".$fistFile."</p></div></div>";
echo "<div class='modal fade' id='".$seconfFile."' tabindex='-1' role='dialog' aria-labelledby='exampleModalCenterTitle' aria-hidden='true'>
<div class='modal-dialog modal-dialog-centered' role='document'>
<div class='modal-content'>
<div class='modal-header'>
<h5 class='modal-title' id='exampleModalLongTitle'>".$fistFile."</h5>
<button type='button' class='close' data-dismiss='modal' aria-label='Close'>
<span aria-hidden='true'>×</span>
</button>
</div>
<div class='modal-body'>
<p>Second file element</p>
</div>
<div class='modal-footer'>
<button type='button' class='btn btn-secondary' data-dismiss='modal'>Close</button>
</div>
</div>
</div>
</div>";
}
fclose($myfile1);
fclose($myfile2);
我使用了 bootstrap 模式。 菜单将数据目标作为第二个文件值传递。
我看到你已经改用 accordion 但正要告诉你它不起作用的原因所以我会继续以防它帮助其他人。
原因是因为 fgets 读取的行 包括 换行符。因此,分配给模态的 ID 包含换行符,但文件中没有换行符的最后一行除外。
要使其正常工作,只需像这样 rtrim 行:
$fistFile = rtrim(fgets($myfile1));
$seconfFile = rtrim(fgets($myfile2));