从原型转换为JQUERY

从原型转换为JQUERY,jquery,ruby-on-rails,jquery-plugins,prototypejs,Jquery,Ruby On Rails,Jquery Plugins,Prototypejs,我目前有一个Rails网站,其中包含一些原型脚本。但是,我的老板希望我转换页面,使其使用JQUERY库。我没有太多的Javascript编程经验,所以我有点困惑。我基本上下载了一个名为“jrails”的插件,它可以帮助从Prototype的“script.aculo.us”中删除所需的帮助程序,并将它们翻译成JQUERY可以理解的内容 以下是两个代码: 原型: new Form.Element.Observer('new_member_search', 0.5, function(element

我目前有一个Rails网站,其中包含一些原型脚本。但是,我的老板希望我转换页面,使其使用JQUERY库。我没有太多的Javascript编程经验,所以我有点困惑。我基本上下载了一个名为“jrails”的插件,它可以帮助从Prototype的“script.aculo.us”中删除所需的帮助程序,并将它们翻译成JQUERY可以理解的内容

以下是两个代码:

原型:

new Form.Element.Observer('new_member_search', 0.5, function(element, value){
    new Ajax.Updater('ProjectMemberNew', '/of/user/search', {
        asynchronous:true,
        evalScripts:true,
        parameters:'username=' + encodeURIComponent(value)
    }); 
});
Jquery:

$('#new_member_search').delayedObserver(0.5, function(element, value){
    $.ajax({
        data:'username=' + value,
        success:function(request){
            $('#ProjectMemberNew').html(request);
        },
        type:'post', 
        url:'/of/user/search'
    });
});
原型代码工作正常,但Jquery似乎由于某种原因无法运行。顺便说一下,我没有在视图中更改任何内容,只是在页面中包含了“jrail”。你知道为什么这样不行吗? 谢谢

编辑1:

所以我在Firebug中运行了一些测试,我想也许我应该发布原始rails代码:

 <%= drop_receiving_element drop_id,
  :onDrop => "function(drag_element, drop_element, event){
if (confirm(\"#{escape_javascript(_('This will remove User from this Group, are you sure?'))}\"))
{#{remote_function(:update => 'module_content',
:url => {:controller => :projects,
:action => :member_delete,
:id => @project.id},
:with => "'u=' + encodeURIComponent(drag_element.id)"
)};}
}",
  :accept => 'RolesUsersSelection',
  :hoverclass => "#{drop_class}_active"

有些事情告诉我,我不能在不更改rails代码的情况下转移到jquery库。

您必须先初始化jquery,然后初始化jquery ui,然后再初始化jrails。如果不是这样,delayedObserver或任何其他帮助程序都不会初始化。真奇怪

你正在使用.delayedObserver插件吗?没有。只有script.aculo.us的原型。它能与delayedObserver插件一起工作吗?等等,不,我正在使用.delayedObserver插件。对不起,你有错误吗?如果是的话,请把它贴在你的问题上。在Firebug中尝试一些东西。$'new\u member\u search'是否显示空数组,或者是否有条目?如果有条目,请尝试$'new\u member\u search'.delayedObserver。它是返回函数还是什么都不返回?如果它返回函数,请检查jQuery文档以了解它应该如何工作。可能其中一个参数不正确。
Prototype is not defined
[Break On This Error] linear: Prototype.K,
effect...2478493 (line 71)
$.effects is undefined
[Break On This Error] $.effects.drop = function(o) {
jquery...4111587 (line 15)
$("#RemoveThisMember").droppable is not a function
[Break On This Error] }, hoverClass:'ProjectRoleDropDelete_active'})
member_edit (line 323)
$("#role_15_user_4").draggable is not a function
[Break On This Error] $("#role_15_user_4").draggable({revert:true})