【问题标题】:Ajax load is not working in chrome while its working in fire fox [closed]Ajax负载在Firefox中工作时无法在chrome中工作[关闭]
【发布时间】:2013-12-16 14:25:23
【问题描述】:
 $('.sband_level1 li').live('click',function(e) {
   e.preventDefault();      
$.ajax({
        type: "GET",
        url: base_url+"product/update_products",
        data: "style_id="+style_list+'&prod_id='+brand_list+'&term_name='+term_name+'&term_id='+term_id,
        context: this,
        async: false,
        beforeSend: function() {
         $('.blocker_new').css('display','block')
        }, 
        success: function(msg){
         $('#page_wn').empty();
         $('#page_wn').append(msg);
         $('.blocker_new').removeAttr('style')
        }
       });
});

当我单击 n FF 时,我的 div 会正确出现;那是阻止新的div。虽然同样的事情在 chrome 中不起作用......那是阻止新 div 没有出现......我的 ajax 工作正常......我得到了正确的输出......

【问题讨论】:

  • 控制台上显示了什么?
  • 删除“style”属性确实是改变元素样式的错误方法。只需将“显示”设置回“无”即可。
  • 不,我在控制台中没有收到任何错误。
  • @cnm1990 你是在本地运行这个页面脚本吗?如,您使用的是file:///path/to/your/htmlpage.html 协议吗?
  • @cnm1990 stackoverflow.com/a/6083677/1524085 阅读本文

标签: javascript php jquery ajax google-chrome


【解决方案1】:

据我所知,Chrome 会忽略删除 DOM 元素的“样式”属性的请求。

     $('.blocker_new').css('display', 'none');

应该可以工作,或者更简单

     $('.blocker_new').hide();

【讨论】:

  • 嗨 Pointy,我尝试了两件事 1) $('.blocker_new').hide(); 2)$('.blocker_new').css('display','none');但我仍然面临同样的问题。当我评论 $('.blocker_new').hide();在成功的 ajax 调用之后,我的 div 正在加载。所以只是显示它需要很多时间。
  • @cnm1990 好吧,我不确定我是否完全理解什么不起作用。我不明白你的意思,“blocker_new 没有来”。
  • 您好,很抱歉,上面的回复很抱歉..实际上很着急,所以无法正确解释您。我试图在点击时显示加载文本。此图像来自 bloker_new div。所以当我点击该文本时不会出现。同样的事情是火狐
【解决方案2】:

尝试移动你的 $('.blocker_new').hide();到完整的回调

...
complete:function() {
$('.blocker_new').hide();
}
...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2012-09-01
    • 2017-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-11
    相关资源
    最近更新 更多