会社で Google Chrome で使っているクラウドシステムがあるのですが、
画面に入力する日付のデフォルト値がいつも月初になっていて、
そこにいつも上期(4月1日)を入力しています。
その後に情報を取得する検索ボタンを押しています。(1日1回)
めんどくさいので、拡張機能を自作しgetElementById で
日付フィールドのオブジェクトを取得
日付フィールドの Value に値をセットすると
めでたく日付がセットされたのですが
その後 検索ボタンを押してもデフォルト日付の情報を表示します。
さらにチェックボックスのオブジェクトを取得し、
checked = true; を設定することで、画面上はチェックされたましたが、
やはり検索で出てくるデータは、チェックされない時のデータです。
ここでjavaScriptでセットした値をなぞるように、
キーボードからあえて同じ値を入力し、
チェックボックスも一度クリックしてチェックを外して、
改めてチェックすると、希望のデータを表示します。
このような場合、どうすれば全てjavaScriptでセットした内容を
画面の値にすることができるでしょうか。
取得したオブジェクトにクリックメソッドを発行してもダメなようでしたし、
あえて、キーボードで入力したかのようなメソッドを発行すると言う手も、
考えてみましたが、うまく行くようには思えません。
何か手はあるでしょうか。アドバイスをいただきたいと思います。
どうぞ、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
こんばんは
以前、似た様なことを行った経験がありますが、ご利用になっているシステムがどのような仕組みになっているかを調べる必要があると思われます。
私が行ったものは、「目的のウィンドウを開き、数十項目をまとめて入力する」というものでしたが・・
・途中で、新しいスレッド(=ウィンドウ)で開き直されてしまうため
ウィンドウの取得をし直さなければならない
・項目に入力する毎に、ajaxでサーバに送っているので、スクリプトで
まとめて入力してしまうと(速すぎるため)ほとんどが無視されてしまう
などの障害がありました。
たいした内容のシステムではないのですが、なかなかに重厚長大な仕組みにしてくれているので、手間がかかりました。
当時はIE利用のシステムだったので、JScriptで始めたのですが、Windowsハンドルの取得やその他もあって、最終的にはVBSにしてしまいました。
項目の入力に関しては、blurやchange、Inputイベントなどで試しても送信されないので、結局、Sendkeysでエンターを入力し適当な時間待つ、という超原始的な対処にしてしまいました。
それでも一応は使えるので、利用してはいたのですが・・
リモートの環境では通信に時間がかかるので待ち時間の誤差が大きく、安全側の設定にすると時間がかかりすぎるため、結局は、手入力に戻るという少々哀しいオチになってしまいましたけれど・・
なんと。1項目づつサーバに送信でしたか。
そう言えば日付項目に未来を入れるとエラーが出てたのでそうかもしれません。
しかも VBSでSendkeys されていたとはなかなか苦労されたんですね。
相手がクラウドシステムなので、作りについて聞けないのです。
アドバイスありがとうございます。大変参考になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでの[]
-
サーブレットコンテキストの意...
-
エクセルVBA 画像を貼り付ける...
-
Excel VBA 定数にオブジェクト...
-
System.Collections.SortedList
-
VB.netでメソッドからコントロ...
-
C++/CLIでの画像情報(RGB)の取得
-
getHeigth,getWidthについて
-
VB.netのコレクションについて
-
抽象クラスのオブジェクトを生...
-
VB.NETでのnothing の意義について
-
VBからアクセスを実行したい!
-
PrintFormを使用してのプリント
-
Javaでブラウザ判定
-
C#のクラスで値渡しをする
-
C#で親にイベントを投げる方法
-
カレントmdbをopenする宣言
-
VBスクリプトでテキストファイ...
-
Vba ListViewの行挿入に関して...
-
「タイプ初期化子が例外をスロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA 画像を貼り付ける...
-
VBAでの[]
-
Excel VBA 定数にオブジェクト...
-
サーブレットコンテキストの意...
-
C#のクラスで値渡しをする
-
javaで、、、
-
servletからjspへオブジェクト...
-
VB.netでメソッドからコントロ...
-
VB.NETでのnothing の意義について
-
Vba ListViewの行挿入に関して...
-
String型からlong型への変換は...
-
VBスクリプトでテキストファイ...
-
JSPでのArrayListの表示につい...
-
Dispose()は、どんな時に使うの...
-
MessageBox.Show(Me,…の「Me」...
-
C#で親にイベントを投げる方法
-
vectorの内容をString型に変換...
-
オブジェクトの参照渡しについて
-
UTF-8のテキストファイルを開く...
-
エクセルVBA/SpecialCellsで特...
おすすめ情報