也许它是如此微不足道,但我就是不能让Dajax与jQuery一起工作。使用prototype时,一切工作正常,但是如何设置dajax来使用jquery呢?我正在使用dajaxexamples,并且已经为prototype做好了所有的设置。
在head中:
<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 = {,但它根本不起作用。
发布于 2012-07-30 20:53:41
如果您仍在尝试这样做:不像这样手动调整Dajax.prototype = {代码,而是尝试根据documentation加载Dajax提供的.js文件(请参阅“在中包含Dajax”一节)。
https://stackoverflow.com/questions/9152357
复制相似问题