我在 $.ajax() 方法的成功中调用了一个隐藏的颜色框弹出窗口:function() 但我无法显示出来。我以前做过同样的事情,但当时它工作得很好,现在它没有显示指定的隐藏弹出窗口。这个实现与之前实现的唯一区别是我在之前的实现中使用了 $.ajax() 方法的数据属性。那件事对我当前的问题负责吗?请帮我解决这个问题。供您参考,我将必要的代码片段如下:
<div class="hidden">
<div id="emailinfoPopContent" class="c-popup">
<h2 class="c-popup-header">Email Invoice</h2>
<div class="c-content">
<h3>Invoice has been sent to your email id</h3>
</div>
</div>
</div>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$(document).on('click', '#email_url', function (e) {
e.preventDefault();
var post_url = $(this).attr('href');
$.ajax({
url: post_url,
type : 'get',
dataType: 'json',
success: function(data) {
var status = data.status;
var dialog_title = "Email Invoice";
var message = data.msg;
if(status == 'success') {
$.colorbox({
inline:true,
href: "#emailinfoPopContent",
width:666
});
//alert(message);
} else {
$.colorbox({
inline:true,
href: "#emailinfoPopContent",
width:666
});
//alert(message);
}
}
});
});
});
</script>
我想说的另一件事是我从 json 格式的 PHP 代码中获得了正确的响应,如果我显示警报而不是颜色框,它会正确显示所需的响应。在 firebug 控制台中没有发现语法错误,我使用的是 jQuery 1.9