使用mysql数据库的jquery加载工作正常,然后最近我收到了一个错误

时间:2013-05-21 22:29:15

标签: jquery mysql

我有一些像这样的代码。

加载Index.php文件并从mysql数据库中提取信息以构建下拉跳转菜单。

当使用该菜单时,会调用jquery并尝试将特定联系人从数据库加载到覆盖窗口中。

它工作正常,我最近没有改变任何东西。我查看了chrome中的错误,这些都是我所不知道的。

这是错误 XMLHttpRequest无法加载http://www.google.com/jsapi。 Access-Control-Allow-Origin不允许使用Origin [my domain]。 jquery.min.js:6 未捕获错误:NETWORK_ERR:XMLHttpRequest异常101

这是我的jquery(我没有显示php,因为它似乎工作正常)

$j('#finddist').change(function(e){ e.preventDefault();


var intRegex = /^\d+$/;

var isNumeric = this.value;
if(intRegex.test(isNumeric)) {
    var loadUrl = 'http://www.accumetrics.com/en?option=com_contactenhanced&view=contact&id='+this.value+'&tmpl=component&task=preview';
    var width = 340;
} else {
    var loadUrl = 'http://accumetrics.info/accumetrics.com.v3/us-distributors?tmpl=component&task=preview';
    var width = 940;
}

$j("#someDiv").dialog({
    autoOpen: false,
    modal:true,
    width: width,
    overlay : {
        background: '#000',
        opacity: '0.9'  
    },
    show: {
        effect: 'fade',
        duration: 700
    }
}); 

$j("#loading").html(ajax_load);

$j("#someDiv").load(loadUrl, null, function(responseText){  
    // alert("Response:\n" + responseText);  
    $j("#someDiv").dialog('open');
    $j("#loading").fadeOut(200);
});  

$j("#someDiv").dialog( "option", "position",[top,center]);

}); 

1 个答案:

答案 0 :(得分:0)

Chrome在调用jQuery时遇到了这个错误。尝试在不同的浏览器中查看是否仍然出现错误,这可能只是一个现在存储在缓存中的错误调用。

虽然我在这里,但也可以帮助你应用jQuery AJAX。

将您的数据分成适当的字符串:

var loadUrl,loadData,width;

if(intRegex.test(isNumeric)) {
    loadUrl = 'http://www.accumetrics.com/en';
    loadData = {option:'com_contactenhanced', view:'contact', id:this.value, tmpl:'component', task='preview'};
    width = 340;
} else {
    loadUrl = 'http://accumetrics.info/accumetrics.com.v3/us-distributors';
    loadData = {tmpl:'component', task:'preview'};
    width = 940;
}

然后在负载中适当地应用它。

$j("#someDiv").load(loadUrl, loadData, function(responseText){

使用任何jQuery AJAX函数时,请始终将您的数据与URL分离到相应的对象中。它不仅使维护更容易,而且还允许jQuery形成适当的查询字符串,而不是强制它。