当我从控制台调用AA.sendRequest()时,我的代码工作正常,但是当我从onclick调用它时,我的代码工作正常:
<a href="/b/Technology" onclick="AA.sendRequest()">Technology</a>
由于某种原因,它会进入错误功能。
textStatus =“error” errorThrown =“”
这是一个非常基本的测试:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript" src="assets/AA.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<a href="login.php" onclick="AA.sendRequest('id');">login</a>
</body>
</html>
使用Javascript:
// JavaScript Document
var AA;
AA = (function() {
function AA() {}
// Request functions
function sendRequest(){}
AA.sendRequest = function(id){
$.ajax({
url: "login.php",
type: "GET",
dataType: "text",
success: function(data){
alert("yay");
},
error: function(jqXHR, textStatus, errorThrown){
alert("status:"+textStatus+", "+errorThrown);
}
});
return false;
}
return AA;
})();
答案 0 :(得分:2)
如果没有上下文,很难确定您要完成的任务。但是,以下内容应该有效:
var AA = {};
AA.sendRequest = function(id){
$.ajax({
url: "/ajaxPage/b/Technology",
type: "GET",
dataType: "text",
success: function(data){
alert("yay");
},
error: function(error){
alert(error);
}
});
return false;
};
在您的HTML中:
<a href="/b/Technology" onclick="AA.sendRequest('someId')">Technology</a>