简体   繁体   English

将数据属性传递给模态引导程序

[英]Pass data attribute to modal bootstrap

<a class="my_link" data-val="user1" href="#">modal link</a>

I have this link to open a bootstrap modal, but I need to pass data attribute "data-val".我有这个链接来打开一个引导模式,但我需要传递数据属性“data-val”。 I tried with javascript but I didn't get it.我尝试使用 javascript 但我没有得到它。 Can you please help me?你能帮帮我吗?

You can listen for show.bs.modal event on modal and get the clicked element available as relatedTarget property of the event.您可以侦听show.bs.modal模态事件,并获得可作为点击的元素relatedTarget事件的性质。 Check Bootstrap modal documentation for further reference.检查 Bootstrap 模态文档以获取进一步参考。

Here is a working example using Bootstrap v4.这是一个使用 Bootstrap v4 的工作示例。

 $('#my-modal').on('show.bs.modal', function (event) { var myVal = $(event.relatedTarget).data('val'); $(this).find(".modal-body").text(myVal); });
 <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous"> <a href="#" class="my_link" data-val="user1" data-toggle="modal" data-target="#my-modal">Open Modal</a> <div class="modal fade" id="my-modal" tabindex="-1" role="dialog" aria-labelledby="my-modal" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="exampleModalLabel">My Modal</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">&times;</span> </button> </div> <div class="modal-body"> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> </div> </div> </div> </div> <!-- jQuery, Popper and Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>

You can just set up the modal你可以只设置模态

<div  class="modal fade" id="setTypeModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">

Then call it with然后用

 $('#setTypeModal').modal('show');

You can then access the elements in the modal using Jquery etc.然后,您可以使用 Jquery 等访问模式中的元素。

and finally do some more work with a click event and close the modal with最后用点击事件做一些更多的工作并关闭模态

 $('#setTypeModal').modal('hide');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM