【发布时间】:2009-03-20 18:38:07
【问题描述】:
我尝试了几种方法,但都失败了。
【问题讨论】:
-
如果您告诉我们您尝试了哪些方法并失败了,将会有所帮助。
标签: ruby-on-rails ajax rjs
我尝试了几种方法,但都失败了。
【问题讨论】:
标签: ruby-on-rails ajax rjs
正如 dbarker 所说,您可以使用page['theElementID'] 根据其 ID 测试特定 HTML 元素是否存在。
如果您的目标元素没有 ID 属性,您还可以使用 CSS 选择器检查它,包括类名。例如:
if page.select('div.comment').any?
# Logic here if there is at least one comment
else
# Logic for no comments
end
page.select 上的文档:http://api.rubyonrails.org/classes/ActionView/Helpers/PrototypeHelper/JavaScriptGenerator/GeneratorMethods.html#M001632
【讨论】:
其实我是拿不到的
if page[:element]
# code here
end
工作。相反,我最终使用了
page << "if( $('element') ) {"
# code here
page << "}"
【讨论】:
您可以使用 JavascriptGenerator 的 [ ] 方法来查找这样的元素:
page['theElementId']
这里是详细信息的链接:
Module ActionView::Helpers::PrototypeHelper::JavaScriptGenerator::GeneratorMethods
【讨论】:
你可以使用 dbarker 说的话:
if page['theElementId'].nil?
# then have you logic here if the element does not exist
else
# if the element does exist
end
【讨论】: