我想要做的是通过
JQuery ajax将data-id值传递给外部链接.
模态将显示,但data-id属性不发送到外部链接.我认为我的 Jquery脚本有问题.但我找不到它.
模态将显示,但data-id属性不发送到外部链接.我认为我的 Jquery脚本有问题.但我找不到它.
这是我的链接:
<a href="javascript:;" data-id="1" onclick="showAjaxModal();" class="btn btn-primary btn-single btn-sm">Show Me</a>
这是我的Jquery ajax脚本:
<script type="text/javascript">
function showAjaxModal()
{
var uid = $(this).data('id');
jQuery('#modal-7').modal('show',{backdrop: 'static'});
jQuery.ajax({
url: "test-modal.PHP?id=" + uid,success: function(response)
{
jQuery('#modal-7 .modal-body').html(response);
}
});
}
</script>
这是我的模态代码:
<div class="modal fade" id="modal-7">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Dynamic Content</h4>
</div>
<div class="modal-body">
Content is loading...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-white" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-info">Save changes</button>
</div>
</div>
</div>
</div>
有人可以帮我从这里出去吗?
我想加载由test-modal找到的页面的内容.
test-modal.PHP的代码很简单,见下文:
<?PHP $uid = $_GET['id']; echo id: '. $uid; ?>
我试图做一个jsfiddle:http://jsfiddle.net/2dp12ft8/3/,但它完全不工作.
我已经改变了js代码,但它仍然不起作用.
我看到模态显示,但只显示“undefined”一词,而不是外部文件的内容.
解决方法
不要混合onclick属性与事件处理程序,它的凌乱,可能会导致错误(例如错误的范围,我相信这是您在这里的主要问题).
如果你使用jquery使用它:
首先为要附加事件的链接添加一个类,在这里我使用class showme:
<a href="#;" data-id="1" class="btn btn-primary btn-single btn-sm showme">Show Me</a>
然后附加到这些链接上的点击事件:
<script type="text/javascript">
jQuery(function($){
$('a.showme').click(function(ev){
ev.preventDefault();
var uid = $(this).data('id');
$.get('test-modal.PHP?id=' + uid,function(html){
$('#modal-7 .modal-body').html(html);
$('#modal-7').modal('show',{backdrop: 'static'});
});
});
});
</script>
要访问PHP中的变量:
$uid = $_GET['id']; //NOT $_GET['uid'] as you mention in a comment