• ベストアンサー

変数と文字列からオブジェクト名を指定する

obj=document.forms[2].elements[3]; のような式の右辺を変数と文字列を使って指定することはできないでしょうか? 間違っていますが、イメージとしては obj = "doucment." + variable1 + ".elements[" + num1 + "]"; みたいな感じなんですけど、こんなことは無理ですよね? 可変変数のような感じで扱いたいのですが。。 何か良い方法はないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#18558
noname#18558
回答No.1

evel("doucment." + variable1 + ".elements[" + num1 + "]"); でどうでしょうか。

noname#15894
質問者

お礼

eval()って数字にするだけじゃくてこういう使い方もあったんだ。 解決しました。 ありがとうございます

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

え?理解してませんか? 文字列で与えてやるとオブジェクトの名前として 認識されますよ variable1="xxx"; num1="yyy"; obj = doucment.forms[variable1].elements[num1];

noname#15894
質問者

お礼

添字ではなく たとえばdocument.formsが文字列だったら?ということです。 eval()で解決です。ありがとうございます。

  • Blaise
  • ベストアンサー率33% (13/39)
回答No.2

これでどうですか? var el = 3; var df = document.forms[2]; var obj=df.elements[''+el+''];

noname#15894
質問者

お礼

これだとdfには文字列ではなくてオブジェクトが入ってますよね。 でも、eval()で解決しました。 ありがとうございます