当Adblock在chrome中处于活动状态时,脚本无法在chrome中运行。它在控制台中显示错误,如此
jquery-1.7.2.min.js:4 GET http://example.com/advertisement/mult_select/30 net :: ERR_BLOCKED_BY_CLIENT
jquery-1.7.2.min.js:4 POST http://example.com/advertisement/getCategoryFieldsList/30/0 net :: ERR_BLOCKED_BY_CLIENT
我也尝试过反adblock-killer.user.js。但它仍然没有用。
<script>
$(document).ready(function(event){
$('.category_1').live('change',function(){
var foo = [];
var name = [];
$('.category_1 :selected').each(function(i, selected){
foo[i] = $(selected).val();
name[i] = $(selected).attr("myTag");
});
//$('.category_title_0').html(name[0]);
var str = (foo[0]).replace(/\,/g, '');
$(this).parent('div').nextUntil('#tit').remove();
var str2 = $(this).find('option:selected').attr('parent_id');
$.ajax({
url: "<?= site_url('advertisement/mult_select')?>"+'/'+str,
success:function(result)
{
$('.mul-select').append(result);
}
});
$.ajax({
type: "POST",
dataType: 'script',
url: "<?= site_url('advertisement/getCategoryFieldsList') ?>"+"/"+str+"/"+str2,
success: function(result)
{
if($("#"+str2).length > 0)
{
$("#"+str2).empty();
$("#"+str2).nextAll('*').empty();
$("#"+str2).html( result );
}
else
{
$('#dynamic_fields_div').append( "<div id="+str2+"></div>" );
$("#"+str2).html( result );
}
}
});
});
});
答案 0 :(得分:2)
正如评论中所述,问题是广告广告拦截了网址中的javax.validation
javax.validation.bootstrap
javax.validation.constraints
javax.validation.groups
javax.validation.metadata
javax.validation.spi
org.apache.servicemix.specs.locator
字样,并认为它是广告。
许多应用程序以这种方式工作(例如,卡巴斯基阻止我拥有的网站上的页面,因为它包含单词advertisement
和toss
),所以你应该小心你写的URL考虑到访问者可能有阻止某些不良词汇的应用程序。
答案 1 :(得分:0)
在我的情况下,URL路径上没有名称“ advertisement”,但仍然出现相同的 ERR_BLOCKED_BY_CLIENT 错误。
我通过为$ .ajax()函数提供 cache:false 选项来解决此问题。
我在这里保留此评论,因为它可能对某人有用。