AJAX和jQuery的问题

时间:2011-03-23 15:28:46

标签: javascript ajax jquery

<html> 
<head> 
<title>Ajax</title> 
<script type="text/JavaScript" src="jquery-1.5.1.min.js"></script> 
<script type="text/JavaScript"> 

function register()
{ 
    $.ajax({
    type: "GET",
    url: "http://exampleurl.com/api/index.php",
    data: "action=login_user&app_key=MyAPIKey&username=Bob&password=HisPassword",
    dataType: "text",
    success: function(data) 
         {
                    alert(data);
         }
    error: function (jqXHR, textStatus, errorThrown) 
         {
                    alert(errorThrown);
         }
          });
}
</script> 

</head> 
<body> 
<form>      
<input type="button" value="Test" onclick="register()"/>
</form>
</body> 
</html>

在地址栏中使用时,URL返回一个字符串(纯文本)。为什么上面的代码不起作用?当我点击按钮时,我没有得到警报。基本上没有任何反应。

浏览器尝试过:IE 8和Chrome。

感谢您的时间。

5 个答案:

答案 0 :(得分:1)

$.ajax来电可能会引发异常。

考虑

  1. 通过从网址中提取查询参数并提供data对象来确保您的URI格式正确:

    data: { action: login_user, app_key: .... etc }

  2. 添加error处理程序

答案 1 :(得分:1)

example.com是您本地网站的网址吗?如果没有,则您的上述示例违反了Same Origin Policy。您可以通过服务器端的代理进行调用来避免这种情况。

答案 2 :(得分:0)

尝试添加

error: function (jqXHR, textStatus, errorThrown) {
    alert(errorThrown);
}

http://api.jquery.com/jQuery.ajax/

答案 3 :(得分:0)

您是否尝试过分开数据?

$.ajax({
    type: "GET",
    url: "http://exampleurl.com/api/index.php",
    data: "action=login_user&app_key=MyAPIKey&username=Bob&password=BobPassword",
    dataType: "text",
    success: function(data) {
        alert(data);
    }
});

答案 4 :(得分:0)

您是否可以访问后端网址?

您可能需要声明contentType。您可能还需要发布帖子并设置数据。

data: "{ 'action': 'login_user', 'app_key': 'MyAppKey', etc. }"