也许它是如此微不足道,但我根本无法让Dajax使用jQuery。一切都按预期的原型工作,但如何设置dajax与jquery一起工作?我使用的是dajaxexamples,并且有原型设置。
头部:
<script src="http://www.google.com/jsapi"></script>
<script>
// Load Prototype
google.load("prototype", "1.6.0.3");
//google.load("jquery", "1.3.2");
//google.load("mootools", "1.2.1");
//google.load("dojo", "1.3.1");
/**
Callback test
**/
function my_callback(data){
alert(data+' received from server');
}
</script>
身体:
<script type="text/javascript" charset="utf-8">
/* Copyright (c) 2009-2010, Benito Jorge Bastida :: For further information check COPYING */
var Dajax = Class.create();
Dajax.prototype = {
initialize: function(){},
process: function(data)
{
if(data==Dajaxice.EXCEPTION){
alert('Something went wrong, please reload the page.');
}
else{
data.each(function(elem){
switch(elem.cmd)
{
case 'alert':
alert(elem.val)
break;
case 'data':
eval( elem.fun+"(elem.val);" );
break;
case 'as':
$$(elem.id).each(function(e){e[elem.prop] = elem.val;});
break;
case 'addcc':
elem.val.each(function(cssclass){
$$(elem.id).each(function(e){ e.addClassName(cssclass);});
});
break;
case 'remcc':
elem.val.each(function(cssclass){
$$(elem.id).each(function(e){ e.removeClassName(cssclass);});
});
break;
case 'ap':
$$(elem.id).each(function(e){ e[elem.prop] += elem.val;});
break;
case 'pp':
$$(elem.id).each(function(e){ e[elem.prop] = elem.val + e[elem.prop];});
break;
case 'clr':
$$(elem.id).each(function(e){e[elem.prop] = "";});
break;
case 'red':
window.setTimeout('window.location="'+elem.url+'";',elem.delay);
break;
case 'js':
eval(elem.val);
break;
case 'rm':
$$(elem.id).each(function(e){e.remove();});
break;
default:
alert('Unknown action!');
}
});
}
}
};
Dajax = new Dajax();
</script>
我尝试取消注释google.load("jquery", "1.3.2");
行并将初始化函数Dajax.prototype = {
更改为Dajax.jquery = {
但它根本不起作用。
答案 0 :(得分:1)
如果您仍在努力让其发挥作用:不要像这样手动调整Dajax.prototype = {
代码,请尝试根据documentation加载Dajax提供的.js
文件(请参阅“&lt; head&gt;中包含Dajax”部分)。