🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.ruby
Article #129

page[id] w RJS i $(id) w Prototype

#129
From: Jaroslaw Zabiello
Date: Wed, 09 Aug 2006 16:20
22 lines
1716 bytes
Aby sprawdzić w Prototype czy istnieje element o danym id, wystarczy 
napisać: if ($(id)) { ... }. Chciałbym to samo zrobić w RJS, ale to nie 
działa. Tzn. page[id] *zawsze* istnieje i zwraca jakiś obiekt 
#<ActionView::Helpers::JavaScriptElementProxy:0x37f332c>

RJS:
if page[id]
  # zawsze tu wchodzi nawet jak document.getElementById(id) nie istnieje!
end

Próbowałem przyjrzeć się bliżej temu obiektowi, ale p page[id].methods 
wyświetla mi tylko #<ActionView::Helpers::JavaScriptElementProxy:0x37f332c>
Kompletnie nie wiadomo co on robi. W api.rubyonrails.pl też nie można nic 
znaleźć na temat JavaScriptElementProxy. Ostatecznie musiałem w RJS użyć 
chamskiego JavaScripta za pomocą page << mój kod js. page[id].empty? czy 
page[id].is_empty? też nie działa, wywala pewnie jakiś błąd JavaScriptu 
(nie wiem na co to jest tłumaczone), bo ani w logu ani spod plugina FireBug 
nic nie mogę zobaczyć.

-- 
Jarosław Zabiełło
http://blog.zabiello.com
Technical Details
Message-ID: <1rmabj0apzrfc$.exi8a3zgp9qr.dlg@40tude.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Jaroslaw Zabiello <hipertracker@gmail.com>
Newsgroups: pl.comp.lang.ruby
Subject: page[id] w RJS i $(id) w Prototype
Date: Wed, 9 Aug 2006 17:20:58 +0100
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 22
Message-ID: <1rmabj0apzrfc$.exi8a3zgp9qr.dlg@40tude.net>
NNTP-Posting-Host: 213.190.141.10
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1155140462 21830 213.190.141.10 (9 Aug 2006 16:21:02 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Wed, 9 Aug 2006 16:21:02 +0000 (UTC)
X-User: newsgate2
User-Agent: 40tude_Dialog/2.0.15.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit