我想做的事?
我正在考虑将 javascript ajax 更改为 jQuery ajax。它似乎更短,我看到很多人使用它,但我无法真正让它工作。
到目前为止我有什么?
我有一个元素:
<li id="unique_id" onmousedown="check_element(event, this)">1</li>
当我单击元素时,它会检查按下了哪个键,如果它的 mouse1 然后检查元素的背景。如果元素没有背景颜色,则将其更改为“红色”并使用 ajax 将元素的 id 添加到 MySQL 数据库。如果它已经有红色背景(意味着它是之前添加的),它会使用 ajax 从数据库中删除它。
代码
检查功能
function check_element(evt, e){
if(evt.which == 1){
if(e.style.background == "") {
e.style.background = "red";
send_with_ajax("add", e);
} else {
e.style.background = "";
send_with_ajax("delete", e);
}
}
}
Ajax(使用 javascript):
function send_with_ajax(action, e){
var xmlhttp;
if (window.XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","ajax/send_calendar.php?data="+e.id+"&action="+action+"",true);
xmlhttp.send();
}
send_calendar.php 没有什么特别之处。只需从数据库中获取变量$_GET['']
和 INSERTS 或 DELETES 值。问题是,我怎样才能改变这个函数来使它成为 jQuery Ajax?
我试过什么?
function send_with_ajax(action, e){
$.Ajax({
type: "GET",
url: "send_calendar.php",
data: "data="+e.id+"&action="+action+"",
success: function(msg){
alert( "Data Saved: " + msg ); //never shows this alert
}
});
}
我也得到错误:
Uncaught TypeError: Object function (a,b){return new e.fn.init(a,b,h)} has no method 'Ajax'
PS。以前从未使用过 jQuery Ajax,所以我不知道我做错了什么。