当PHP echo生成模式onclick按钮时,打开该按钮
我在这里需要你的帮助。我有一个按钮,它由当PHP echo生成模式onclick按钮时,打开该按钮,php,jquery,html,modal-dialog,Php,Jquery,Html,Modal Dialog,我在这里需要你的帮助。我有一个按钮,它由PHP文件回显到HTML文件。单击该按钮后,我希望在HTML文件中显示一个模式。有人知道我如何才能做到这一点吗 PHP echo: '<div class="modal fade" id="modelWindow" tabindex="-1" role="dialog"> <div class="modal-dialog" role="document"> <div class="modal-con
PHP
文件回显到HTML
文件。单击该按钮后,我希望在HTML
文件中显示一个模式。有人知道我如何才能做到这一点吗
PHP echo:
'<div class="modal fade" id="modelWindow" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">'. $row['title'] .'</h4>
</div>
<div class="modal-body">
<img class="img-rounded" src="'. $row['image'] .'" alt="MyImage" width="550px" height="240px">
<p class="well">'. $row['description'] .'<p>
</div>
<div class="modal-footer">
<button type="button" data-dismiss="modal" class="btn btn-default">Close</button>
</div>
</div>
</div>
</div>
<div class="row top-buffer">
<div class="col-md-6">
<img class="img-rounded" src="'. $row['image'] .'" alt="MyImage" width="550px" height="240px">
</div>
<div class="col-md-6">
<h3>'. $row['title'] .'</h3>
<p class="well">'. $row['description'] .'<p>
<div class="row top-buffer">
<div class="col-md-5 col-md-offset-1">
<img src="img/link_icon.png" class="img-rounded" width="20px" height="20px"/>
<a href="www.link.com">LINK</a>
</div>
<div class="col-md-6">
<button class="btn btn-primary pull-right" id="btn">More...</button>
</div>
</div>
</div>
</div>'
'
&时代;
“.$row['title']”
”$行['description'].
接近
“.$row['title']”
”$行['description'].
更多
'
第一部分是模态框,第二部分是HTML输出
触发模式的脚本:
<script type="text/javascript">
$("#btn").click(function() {
$("#modelWindow").modal("show");
});
</script>
$(“#btn”)。单击(函数(){
$(“#模型窗口”).modal(“显示”);
});
我需要将脚本添加到外部文件并在php内部调用它吗?或者有其他方法可以这样做吗?谢谢您可以将脚本包含在php echo中,只需确保所有依赖项(如
jQuery
和Bootstrap.js
)都包含在将呈现回显数据的页面上。Javascript代码不能被删除由PHP直接触发,因为PHP在服务器上运行,Javascript在客户端(如浏览器)上运行。所以我们需要的是一种告诉浏览器执行代码的方法
不过,您可以在PHP中构建的字符串中包含
'<script type="text/javascript">
$("#btn").click(function() {
$("#modelWindow").modal("show");
});
</script>'
'
$(“#btn”)。单击(函数(){
$(“#模型窗口”).modal(“显示”);
});
'
如果jQuery和Bootstrap的Javascript在插入DOM时已经加载,那么单击按钮就可以了。如果这对您不起作用,请尝试将其更改为:
'<script type="text/javascript">
window.onload = function(){
$("#btn").click(function() {
$("#modelWindow").modal("show");
});
}
</script>'
'
window.onload=函数(){
$(“#btn”)。单击(函数(){
$(“#模型窗口”).modal(“显示”);
});
}
'
将代码放入窗口。onload
可确保浏览器仅在加载所有外部脚本后才运行它。从:
加载事件在文档加载过程结束时激发。在
此时,文档中的所有对象都在DOM中,并且
图像、脚本、链接和子帧已完成加载
如果您想做的是在onclick上打开一个模态,那么触发模态的方法有很多,即使您可以使用类似的方法
echo'点击打开模态'代码>
如果您想在php函数上执行此操作,请使用此函数,它将在调用时自动触发模式
echo "<script>$('#showmymodalnow').modal('show')</script>";
echo“$”('showmymodalnow').modal('show');
我个人喜欢像这样直接从HTML中使用onclick事件
<button onclick="$('#showmymodal').modal('show')">click to open modal</button>
单击以打开模式
我希望这对某人有所帮助我是否需要将脚本添加到外部文件并在php中调用它,或者有其他方法来实现这一点两种方法都可以,但是你的模态类应该已经加载了。我没有在php文件中包含任何内容。你认为这就是问题所在吗?支持模态的库在你的php代码echo之前已经加载了?没有。所以我必须将它们包含在头中
?当然可以,您需要先加载libs,我应该echo
thiswindow.onload=function(){$(“#btn”)。单击(function(){$(“#modelWindow”).modal(“show”);}
?是的,或者直接将其放在HTML文件中。我尝试了两种解决方案,但都不起作用。你知道为什么吗?你能提供一个提琴示例吗?javascript是否显示在DOM中?(打开浏览器开发工具,查看PHP字符串插入的位置)。如果您知道如何处理PHP脚本(我不知道这是可能的),请提供一个处理工具,我会给您反馈。