Hey Sean,
Yeah, I’m well aware of the issue with not being able to use [ScriptableMember]
for IronRuby. =(
1. Access Javascript variable from Ruby:
If in your HTML you have some variable:
<script type=”text/javascript”>
var jsVar = “Hello from Javascript”
</script>
Then in your Ruby script you can access it:
Include System::Windows::Browser
HtmlPage.window.eval “jsVar”
2. Access Ruby function from Javascript
This is not directly possible because of not having attribute support. Curt
might have more input into whether this will be fixed in the future.
However, if you’re not opposed to hacky solutions, attach Ruby to a JS event
(HtmlElement#attach_event), and when you want data from Ruby fire the JS event
and Ruby could write the data to the DOM (a hidden div, perhaps?). Ugh, that
sucks, but it’s what we’ve got today.
I’d suggest trying the first option, and we’ll keep you posted on making Ruby
objects scriptable from JS.
~js
On 8/14/08 11:59 AM, "Sean Clark Hess" <[EMAIL PROTECTED]> wrote:
Hello all, I need some way to either access a javascript variable or expose a
function to javascript to be called later. I've tried option #2, with the
following call, but I don't know how to specify a member function as
scriptable. In C#, you use a meta-flag [ScriptableMember] above the function.
HtmlPage.register_scriptable_object('mn', self)
What about the other approach? I know you can access the dom, but I need to
access a plain old variable from javascript.
Thanks!
~sean
_______________________________________________
Ironruby-core mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/ironruby-core