PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了我在动态按钮上单击时的动态模态大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我,我是新来的,所以我并不真正了解麦奇,但是我需要弄清楚这件事:
我有一些动态按钮的PHP页面.

我希望这个动态按钮打开一个包含动态内容的模式,但是我不知道为什么它不起作用.

从我的测试站点here中可以看到,如果单击第一个按钮,它将显示具有正确内容的模态,但是,如果单击第二个按钮(通常是生成的),则不会显示任何内容.

这是我的代码,但是通过上一个链接可以更容易理解;

<!------------------------------------------- ATTIVAZIONE MODAL--------------------------------->

    <script>
// Get the modal
var modal = document.getElementById('mymodal');

// Get the button that opens the modal
var btn = document.getElementById("<?PHP echo $mq_solarium; ?>");

// Get the <span> element that closes the modal
var span = document.getElementsByClassName("chiudi_dimensione")[0];

// When the user clicks the button, open the modal 
btn.onclick = function() {
    modal.style.display = "flex";
}

// When the user clicks on <span> (X), close the modal
span.onclick = function() {
    modal.style.display = "none";
}

// When the user clicks anywhere outside of the modal, close it
window.onclick = function(event) {
    if (event.target == modal) {
        modal.style.display = "none";
    }
}
</script>
<!-------------------------------------------FINE ATTIVAZIONE MODAL--------------------------------->
.plan-wrapper {

    border: 3px solid #73AD21;
}
<div class="hero-wrapper dimensioni">
<?PHP
    //estraggo i valori per smart
    $query=MysqLi_query($con, " select * from appartamenti INNER JOIN moduli ON appartamenti.id_planimetria = moduli.id_planimetria  WHERE taglio='monolocale' AND visibile='1' "); 

?>

     
               
  <div id="myBtn"class="plan-wrapper">click me</div>

  <div style="BACkground-color:DodgerBlue;" id="mymodal" class="lightBox_wrapper_dimensione">
    <div id="close" class="chiudi_dimensione">X(closE)</div>
    some variables from PHP
  </div>
</div>
 
 <?PHP       
}
    }
    else {
    // redirect user to another page
    header( "@R_944_5352@n: ../index.PHP" ); die;
        }
?> 
 
 <!------------------------------------------- CHIUSURA PHP--------------------------------->   
  
</div>

解决方法:

问题是在getElementById()中,它只能触发1个id,您应该将其更改为单击并获取模态数据的其他逻辑,或者将这个脚本以及数据传给其他人并生成不同的id值
因此,您在整个页面上只能拥有1个myBtn ID,您可以制作类似myBtn1,myBtn2,myBtn3的代码
要么
< div class ='myBtn'data-id ='1'> … content …< / div>
并使用此数据ID来访问所需的模式

例如,使用jquery显示模式,您可以这样做
首先在每个按钮中将id更改为class,并添加data-id =’number_of_item’数字应该与使用模态时要做的事情不同,应该在同一foreach中使用id =’mymodal_number_of_item’生成它们!在您可以使用下面的代码通过查询打开模态后,它对我来说比较容易,但是您可以使用纯JavaScript来实现.

$('.myBtn').on('click', function() {
    var id = $(this).data('id');
    $('#mymodal_'+id).show();
})

大佬总结

以上是大佬教程为你收集整理的我在动态按钮上单击时的动态模态全部内容,希望文章能够帮你解决我在动态按钮上单击时的动态模态所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: