[#48430] WEBrick — 牛坂 博則 <ushizaka.hironori@...>
|牛坂ともうします。
8 messages
2011/10/03
[#48443] 関数の戻り値について — "Jun'ya Shimoda" <jun-shimo@...>
下田です。
7 messages
2011/10/07
[#48450] 1.8.7と1.9.2の挙動の違いについて — "Jun'ya Shimoda" <jun-shimo@...>
下田です。
13 messages
2011/10/09
[#48454] Re: 1.8.7と1.9.2の挙動の違いについて
— dezawa <dezawa@...>
2011/10/10
出沢です
[#48467] net/https のproxy経由接続シーケンスについて — KASUGA Toru (春日 玄) <kasuga.toru@...>
春日と申します。
7 messages
2011/10/14
[#48468] Re: net/https のproxy経由接続シーケンスについて
— 名島太樹 <h.najima@...>
2011/10/14
名島と申します。
[#48475] Re: net/https のproxy経由接続シーケンスについて
— KASUGA Toru (春日 玄) <kasuga.toru@...>
2011/10/16
名島様
[#48484] Windows で $0 へ代入すると刈り取られる — "5.5" <5.5@...>
5.5 です。
10 messages
2011/10/20
[#48485] Re: Windows で $0 へ代入すると刈り取られる
— Nobuyoshi Nakada <nobu@...>
2011/10/21
なかだです。
[#48486] Re: Windows で $0 へ代入すると刈り取られる
— "5.5" <5.5@...>
2011/10/21
5.5 です。
[#48496] IE9/Windows7(64bit)だとformをsubmitできない — 大縄亮 <onawa@...>
44Gv44GY44KB44G+44GX44Gm44CC5qCq5byP5Lya56S+44Oe44Kk44Os44O844K444OG44Kv44OO
7 messages
2011/10/25
[ruby-list:48502] Re: IE9/Windows7(64bit)だとformをsubmitできない
From:
arton <artonx@...>
Date:
2011-10-28 14:04:05 UTC
List:
ruby-list #48502
artonです。
パラメータを確認しましたが、0個で変わっていませんでした。
というわけで、パラメータ数が原因では無いようです。
で、irbで呼び出してみると不思議なことに、以下になります。
irb(main):056:0> x = ie.document.getElementById('srchbtn')
=> #<WIN32OLE:0x00000002f9cdb8>
irb(main):057:0> x.click
=> #<WIN32OLE:0x00000003044b58>
clickはvoidだと思うのですが、WIN32OLEのオブジェクトが返っています。
irb(main):060:0> a.ole_methods
=> [#<WIN32OLE_METHOD:GetTypeInfoCount>, #<WIN32OLE_METHOD:GetTypeInfo>, #<WIN32
OLE_METHOD:GetIDsOfNames>, #<WIN32OLE_METHOD:Invoke>]
が、持っているのはIDispatch*のみです。
irb(main):062:0> x.__send__(:click)
=> #<WIN32OLE:0x0000000304f5a8>
irb(main):063:0> x.click()
=> #<WIN32OLE:0x00000002f89fb0>
irb(main):064:0> x.click('hello')
=> nil
'hello'を与えても、特に問題なくsubmitされます。おそらくDOMオブジェクトは
JavaScriptのオブジェクトとしての振る舞い(引数はあまり気にしない)として
実装されているような。
上記から、
clickというプロパティがあるのだと思います。つまり、JavaScriptオブジェク
トであれば、
var elem = document.getElementById('subtn');
elem.click = function() { .... } // セッタ
alert(elem.click); // ゲッタ function() { ... } が表示
elem.click(); // メソッド呼び出し
となるわけで、IE9からメソッド名を与えるとプロパティとして振る舞うのでは
ないでしょうか。
で、Win32OLEは、とりあえず無引数の呼び出しでは最初にプロパティゲッタをチェッ
クするため、それにレスポンスがあってメソッド呼び出しに進まないということ
だと思います。
(解決しようがないのは、Rubyには、()の有無の区別とか別にないことですね)
--
arton <artonx@yahoo.co.jp>