2011-03-07 51 views
1

我不明白为什么这是评估为空。这是有问题的代码:无法调用方法删除空

的Javascript(jQuery的)电话:

<a href="javascript:;" onmousedown="pheonixTag();">, 
    <%= disp %> 
</a> 

JavaScript函数:

function pheonixTag() { 

    $("#outer_block").remove(); 

} 
HTML的

相关位:

<div id="outer_block"> stuff 
    <div id="inner_block"></div> 
</div> 

当我做这个调用我收到错误:无法调用方法删除null。是什么赋予了?

+0

什么版本的Rails?你的布局加载Prototype和jQuery吗?如果你不使用一个或者使用jQuery没有冲突模式,他们会争夺'$'。 – 2011-03-07 19:32:49

+0

我正在使用Rails 3.0.4,我只加载jquery。 – providence 2011-03-07 19:38:42

+0

啊,不要紧,我只是检查和轨道加载原型作为其'javascript_include_tag:默认'的一部分!我没有意识到。非常感谢提示。那个评论=答案。如果你让它正式,我会接受。 – providence 2011-03-07 19:42:12

回答

1

这意味着$(“#outer_block”)返回空引用而不是真实对象。我相信你应该使用$(“outer_block”)

0

我建议下降到在Firefox的开发控制台或Firebug。

从那里我会检查返回的js错误,并在控制台中输入我的选择器查询来测试它是否返回一个对象。

你的函数phoenixTag在哪里?

+0

感谢您的答案,问题是原型和jQuery争取'$'。感谢@Steve指出了这一点。 – providence 2011-03-07 19:49:50