我正在尝试使用jQuery,一切都很棒,直到现在,当我尝试渲染部分并将其附加到div时.以下是我设置的方法:
我有一个响应js的动作:
def index
@objects = Object.find(:all)
respond_to do |format|
format.js
end
end
Run Code Online (Sandbox Code Playgroud)
还有一个名为index.js.erb的模板,里面有一些javascript:
alert("hello world");
Run Code Online (Sandbox Code Playgroud)
Firebug返回"text/javascript"响应,其中包含:
alert("hello world");
Run Code Online (Sandbox Code Playgroud)
但是没有出现警报窗口,也没有任何其他JavaScript工作.我检查了http://railscasts.com/episodes/136-jquery 并且或多或少跟随.我尝试了其他一些东西,比如使用.rjs而不是.erb并将它放在我的模板中:
page.alert("hello world");
Run Code Online (Sandbox Code Playgroud)
但我得到了相同的结果,浏览器从不执行JS.
任何人都知道为什么JavaScript没有被执行?
我正在运行Rails 2.3.4.
在我的特定情况下,我有一个评论表,直到用户登录并加入特定主题后才能使用.然后,他们可以对该主题发表评论.
在您看来,我应该完全隐藏评论表单,还是禁用它并提示用户完成必要的要求.
我有一个配置了authlogic和authlogic_facebook_connect的应用程序,但是每次单击"连接"按钮时,我的UserSession都会失败验证,说"你没有提供任何验证细节"
是不是authlogic_facebook_connect应该绕过登录/密码验证?我错过了一些配置步骤吗?
任何帮助,将不胜感激!
我写了一个jQuery插件,绑定到页面上的8个元素,我想使用.live()将click操作绑定到每个元素中的链接.当您单击链接时,它应使用ajax发布表单.问题是所有8个元素的所有链接都提交了页面上第一个元素的表单.当我使用.click()时,一切正常.我更喜欢使用.live(),因为我会动态添加更多元素.
这是一些类似于我正在做的代码:
var $container = $(this);
var $form = $container.find('form.some_form');
var $button = $container.find('a.some_link');
Run Code Online (Sandbox Code Playgroud)
这只会提交第一个元素的表单:
$button
.live('click', function() {
// some code that submits $form via ajax
});
Run Code Online (Sandbox Code Playgroud)
但是,这总是提交正确的形式:
$button
.click( function() {
// identical code that submits $form via ajax
});
Run Code Online (Sandbox Code Playgroud)
有什么关于.live()我应该知道吗?难住了.
Twitter似乎正在使用<i/>标签来显示来自css精灵的图标.他们只是构成了那个标签,还是我从未听说过的HTML?
无论如何都是绝妙的主意:)