javascript で、form 内のオブジェクト text,radioボタンなどを押したとき(onClick)に、どのform 内にいるかというのを、取得可能なのでしょうか? this を使うと、text,radioボタンなどのname 情報はとれるのですが、ドキュメントオブジェクトの上位の情報が簡単にとれると便利なのですが、可能なのでしょうか? 可能でないとしたら、オブジェクトのプロパティをすべて見せるメソッドがあると何がつかえるかわかります。Ruby でいえば、p に相当するメソッドですが、あるのでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/10/12 12:53:37
  • 終了:2007/10/12 13:25:50

ベストアンサー

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912007/10/12 13:15:44

ポイント60pt

上位のオブジェクトを取得するのは parentNode になります。


簡単なサンプルですが、ご参考までに。

<html>
<head>
<script language ="javascript">
    function showFormName( obj ) {
        alert( obj.parentNode.name );
    }
</script>
</head>
<body>
    <form name="formApple">
        <input type="button" name="apple" value="Apple" onclick="showFormName(this);" />
    </form>
    <form name="formBanana">
        <input type="button" name="banana" value="Banana" onclick="showFormName(this);" />
    </form>
</body>
</html>

http://www.tohoho-web.com/js/dom.htm

id:isogaya

ありがとうございます。

for(適当な変数 in オブジェクト) でも取得できるようですね。

2007/10/12 13:25:25
  • id:Mars
    フォームエレメントには所属するformオブジェクトを指すプロパティが用意されています。
    http://www.doraneko.org/misc/dom10/19981001/level-one-html.html#attribute-form
    親の親の・・・となると面倒だし、これを参照した方が便利ですよ。

    例 <input onclick="alert(this.form)"> → 親のフォームオブジェクト

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません