我在$ .ajax()方法的成功:function()中调用隐藏的颜色框弹出窗口,但我无法显示。我之前做了同样的事情,但当时它工作正常,现在它没有显示指定的隐藏弹出窗口。这个实现与之前实现的唯一区别是我在前面的实现中使用$ .ajax()方法的数据attrribute。那件事对我目前的问题负责吗?请帮我解决这个问题。为了您的参考,我正在按如下方式提供必要的代码片段:
<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代码中得到了正确的响应,如果我显示警告而不是colorbox它会正确显示所需的响应。在firebug控制台中找不到语法错误,我正在使用jQuery 1.9
答案 0 :(得分:0)
尝试添加open: true
,例如:
$.colorbox({
inline:true,
href: "#emailinfoPopContent",
width:666,
open: true
});
答案 1 :(得分:0)
你可以尝试这样的事情。我不确定这个
var show_html = $('emailinfoPopContent').html();
$.colorbox({html:show_html});