1

也许它是如此微不足道,但我根本无法让 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 = {但它根本不起作用。

4

1 回答 1

1

如果您仍在尝试使其正常工作:不要像这样手动调整代码,而是尝试根据文档Dajax.prototype = {加载 Dajax 提供的文件(请参阅“在 <head> 中包含 Dajax”部分)。.js

于 2012-07-30T12:53:41.387 回答