• 締切済み

オブジェクト名もフレキシブルに・・・。

ducklingの回答

  • duckling
  • ベストアンサー率47% (88/185)
回答No.2

tID,tkID がよく分からないのでアレなんですが、(謎 tID が セレクトボックス名、tkID がフォーム名と仮定して、 これでどうですか? function combotext(tID,tkID){ getItem = tID.options[tID.selectedIndex].value; setItem = "document."+ tkID +"."+ tID.name + "_t"; eval(setItem).value = getItem; } <form name="test"> <input type="text" name="color_t"> <select name="color" onChange="combotext(this,'test');"> <option value="red">red <option value="blue">blue <option value="green">green </select> <br> <input type="text" name="size_t"> <select name="size" onChange="combotext(this,'test');"> <option value="S">S <option value="M">M <option value="L">L </select>

関連するQ&A

  • [オブジェクト]オブジェクト名自体の送信

    こんにちわぁ♪ テキストボックスやコンボボックスなどの選択内容や入力内容を渡す事は簡単にできたのですが、それらオブジェクト名(name=)自身を処理に渡すことは出来ますか? 宜しくお願い致します。

  • オブジェクト名に":"が含まれる場合

    submit時にある変数に動的に値を入れたいのですが、その変数が":"という文字を含みます。 <script LANGUAGE="JavaScript" > <!-- function meisai(){ document.frm._$:EMPNO.value = 1; document.frm.submit(); } //--> </SCRIPT> 実行時に":"の箇所で 「オブジェクトを指定してください」とスクリプトエラーになって動きません。 仕様上、変数の値は変更することができません。 こういう場合どうしたらよいでしょうか? 宜しくお願いします。

  • 次のDelphiプログラムで

    type TStrArray = class private fStrList: TStringList; procedure SetItem(index: Integer; const Value: string); function GetItem(index: Integer): string; public constructor Create; destructor Destroy; override; procedure Clear; function GetCount: Integer; procedure Push(Item: string); function Pop: string; procedure UnShift(Item: string); function Shift: string; property Items[index: Integer]: string read GetItem write SetItem; default; end; TStrArray = class は TStrArray = class(TObject) としても同じでしょうか? GetItem write SetItem; default; の「default;」の意味を教えてください。

  • JSの保存ダイアログについて

    以下のコードは簡易メモ的なものです そこに書き込まれた内容を保存できるようにしたいのですがfunction dl()には何を書けばいいのでしょうか? 調べてみて function dl(C:\){ var a = document.createElement('a'); a.href = C:\; a.setAttribute('dl', name || 'noname'); a.dispatchEvent(new CustomEvent('click')); } としてみたのですがこれを書き込むと保存ダイアログはおろかtextの保存もできなくなってしまいます <input type="text" id="title"><br><br> <textarea id="memo" rows="8" cols="50"></textarea><br><br> <input type = "button" value="SAVE" onclick="dl();"> <script> var title = document.getElementById("title"); var memo = document.getElementById("memo"); window.onload = function() { var body_title = localStorage.getItem("title"); if (body_title != null) title.value = body_title; var body_memo = localStorage.getItem("memo"); if (body_memo != null) memo.value = body_memo; } title.onchange = function() { localStorage.setItem("title",title.value); } memo.onchange = function() { localStorage.setItem("memo",memo.value); } function dl(){ } </script>

  • オブジェクトから値を取得する方法について

    QNo.7391687 の続きで質問をもうひとつお願い致します。 いろいろと調べたり、試行錯誤しながら、 erlectオブジェクトの値を取得して、 取得した値の出力をしたいと考えています。 ご教授頂ければ幸いです。 どうぞよろしくお願いいたします。 【ソース】 ------------------------------------------------------- <head> <title>問合せ入力フォーム</title> <script type="text/javascript"> function textoutput() {        <!-- フォームを変数に// --> var formObj = document.form01;        <!-- selectを取得// --> var select01 = formObj. select01;        <!-- textを結合用の変数として準備// --> var text = '【select01】' + '\n'; text += select01 + '\n';        <!-- output.valueにtextを反映(最後に改行コード)// --> formObj.output.value = text + '\n'; } </script> </head> <body> <form name="form01"> <!--セレクトボタン// --> <strong>・OS確認</strong><br /> <select name="select01"> <option value=""> <option value="Windows7">Windows7 <option value="WindowsVista">WindowsVista <option value="WindowsXP">WindowsXP <option value="WindowsMe">WindowsMe <option value="Windows2000">Windows2000 </select> <br> <!--ログ出力// --> ログ出力<br> <input type="button" value="ログ出力" onClick="textoutput();"><br> <textarea name="output" cols="60" rows="10"></textarea><br> </form> </body> </html>

  • オブジェクトを指定しても「Nullまたはオブジェクトではありません」となってしまう

    Webページ作成にて、セレクトボックスを選択した時に選択内容によって、 同フォーム内にある特定のラジオボタンを無効にする処理を組んでいます。 セレクトボックスの[onChange]イベントに下記の[selectChange()]が 動くように記述しているのですが、どうしても 「Nullまたはオブジェクトではありません」とエラーとなってしまいます。 オブジェクト名のタイプミスなども含め何度も見直しましたが間違いありませんでした。 ちなみに、この関数と同じ場所に、ロールオーバーイメージをプリロード させる関数も記述しているのですがそちらは問題なく動いています。 (DreamWeaverが生成してくれるものですが・・) 原因として何が考えられるでしょうか。 分かる方お力をお貸し下さい。 //特定のラジオボタンを無効にする関数 function selectChange() { var selectedNum = document.FormName.SelectBox.selectedIndex; if(selectedNum == 1) { document.FormName.RadioButton[0].disabled = false; document.FormName.RadioButton[3].disabled = true; document.FormName.RadioButton[4].disabled = true; } else if(selectedNum >= 2){ document.FormName.RadioButton[0].disabled = true; document.FormName.RadioButton[3].disabled = false; document.FormName.RadioButton[4].disabled = false; } } //セレクトボックスの記述 <select name="SelectBox" onchange="selectChange()"> <option value=""></option> <option value=1>1</option> <option value=2>2</option> <option value=3>3</option> </select>

  • VBAでのオブジェクト名の付け方で困っています。

    私が知りたいのはユーザフォームを一度作成した後にオブジェクトを追加したときのオブジェクト名の処理の仕方です。 今、EXCEL VBAでアンケート入力フォームを作成しています。テキストボックスやチェックボックスが全部で70ほどあります。以下のようにControlsコレクションを用いてユーザフォームに入力した文字列などをワークシートに追加しています。 ……<略> For i = 1 To 10 Cells(Row, i).Value = Me.Controls("CheckBox" & i ).Value Next i ……<略> しかし、入力フォームの画面構成を変更して、新たにテキストボックスやチェックボックスを追加すると、例えば、ユーザフォーム上で隣り合ったTextBox1とTextBox2の間にTextBox35が入ってきて以下のようにコードを書き換えねばなりません。 ……<略> Cells(Row, 1).Value = Me.CheckBox1.Value Cells(Row, 2).Value = Me.CheckBox35.Value For i = 2 To 10 Cells(Row, i+1).Value = Me.Controls("CheckBox" & i ).Value Next i ……<略> プロパティからオブジェクト名のひとつひとつを編集してユーザフォームのテキストボックスの表示順にするのも手間ですし……まだ、設計の試行錯誤の段階なのでまだまだテキストボックスやチェックボックスを追加・削除をすると思いますし…… 何か効率のよいオブジェクト名の付け方はないでしょうか? みなさんはどのようにされていますか?

  • sessionStorageについて調べています。

    入力フォーム、名前の入力欄とセレクトボックス2つを書いています。 入力フォームで選択セレクトボックスの内容をsubmitを押して、次ページ「確認画面」に行ったときに、その確認画面から前面遷移した時に、 選択したセレクトボックスの値が保持されるようにコードを書いているのですが、セレクトボックスのsessionStorageのコード●黒丸の部分にありますコードは、 なぜ、名前nameの入力フォームのsessionStorageの書き方と違うのでしょうか? 保存したセッションストレージを変数にするまでは、入力フォームとセレクトボックスも同じですが、 入力フォームの条件文とセレクトボックスの条件文が異なる書き方をしている理由は分かりますでしょうか??? 入力フォームの条件式 if (name.value != "") sessionStorage.setItem('name', name.value); セレクトボックスの条件式 if(val1!== null)fruits.value = val1; ※PHPを使った方がよいですが、今は練習なので、使っていません。提示コードの意味は大まかにわかっています。 自分で書いたコードではありません。 ---HTMLのコード--- <body> <form action="form1.php" method="post" id="form"> 名前:<input type="text" class="form1" name="name" id="name" value="" /> 選択①: <select id="fruits" class="select1" name="fruits"> <option value="">果物を選択する</option> <option value="">リンゴ</option> </select> 選択②: <select id="food" class="select1" name="food"> <option value="">食品を選択する</option> <option value="">ごはん</option> </select> <button id="submit" class="yohaku"> </button> </form> </body> ---javascriptのコード--- <script> const key = 'date_key'; const form = document.querySelector('#form'); const name = document.querySelector('#name'); form.addEventListener('change', function() { if (name.value != "") sessionStorage.setItem('name', name.value); if (fruits.value != "") sessionStorage.setItem('fruits', fruits.value); if (food.value != "") sessionStorage.setItem('food', food.value); }); ● let val1 = sessionStorage.getItem('fruits'); if(val1!== null)fruits.value = val1; ● let val2 = sessionStorage.getItem('food'); if(val2!== null)food.value = val2; name.value = sessionStorage.getItem('name'); </script>

  • VBScriptでHTMLのセレクトボックスで表示されている値に指定したい

    VBScriptでHTMLのセレクトボックスで表示されている値(value)に指定したいと思っています。どのようにすればよいのでしょうか?詳しくは下記参照。 もし、VBSで無理であるのならほかの言語で可能な言語を教えていただきたく思います。 例:”value_1”を指定してVBSで選びたい <select name="select_name" onchange="select_onchange"> <option value="value_1">value_1_1</option> <option value="value_2">value_2_2</option> </select> (注意) 下記のように位置情報で指定するのではなく、valueの値(value_1)や表示されている値(value_1_1)でしたいと思っています。 IEオブジェクト.Document.フォーム名.コンボボックス名.selectedIndex = 0からの番号

  • 変数にフォーム名を指定したい

    下のスクリプトは、プルダウンメニューの項目を選択するとフォームにそのvalueを渡すものです。 フォームに original という name を指定しています。 putselect関数の中の document.reg.original の original を直で打つのではなく、 putselectの引数として、指定したのですがどのようにすると良いでしょうか? JavaScript function putselect(obj){ document.reg.original.value = obj.options[obj.selectedIndex].value; } HTML <form name="reg"> <input name="original"> <select onchange="putselect(this)"> <option >#作品の選択</option> <option value="a">A</option> <option value="b">B</option> <option value="c">C</option> </select> </form> <hr> こうなってほしい。 function putselect(obj,フォーム名の変数){ document.reg.フォーム名の変数.value = obj.options[obj.selectedIndex].value; } HTML <form name="reg"> <input name="original"> <select onchange="putselect(this,original)"> <option >#作品の選択</option> <option value="a">A</option> <option value="b">B</option> <option value="c">C</option> </select> </form> <hr> これと同じ動作であれば、nameでなくidなどでも構いません。 よろしくお願い致します。