JQueryのchangeイベント実行
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
Message#2 2018年10月26日(金)11時06分 From: ジャッカル | 返事 削除 変更 |
どれがJQueryのイベントコード? > Redmineというプロジェクト管理ツールから、登録されているチケットをVBAで取得しようとしています。取得処理の中で、セレクトボックスを選択した後でJQueryのchangeイベントが発生する箇所があるのですが、イベントの起動ができません。本掲示板の過去スレッドに出ていた方法も試したのですが、うまくいきませんでした。 > みなさんの知恵をお借りしたいです。よろしくお願いします。 > > <対象ページの構造> > 1)HTMLの内容 > ★で要素を選択すると、要素に応じたセレクトボックスが表示されます。 > td class="add-filter" > label for="add_filter_select"?フィルタ追加 /label > select id="add_filter_select".../select★ > /td > > 2)イベントの確認 > ブラウザでselect id="add_filter_select"でEvent Listeners を > 確認すると、以下の通りでした。 > ▼change > ▼select#add_filter_select > application.js?1396112202:78 > useCapture: true > passive: false > once: false > ▼handler: f() > ?[[scopes]]: Scopes[1] > [[FunctionLocation]]: <unknown> > ?__proto__: f() > ?prototype: {constructor: f} > name: "" > length: 0 > caller: null > arguments: null > guid: 24 > > handler の後のf() にマウスを乗せると、 > function() { addfilter($this).val(), '',[]; } > と表示されました。 > > 3)ソースの確認 > handlerのf()で"Show Function Definition"を実行すると > 以下のソールが表示・選択されました。 > function initFilters() { > $('#add_filter_select').change(function() { > addFilter($(this).val(), '', []); > }); > > <試したこと> > 1)以下の方法では、値がセレクトボックスに表示されましたがイベント > は発生しませんでした。 > Dim evt As Object > Set evt = objIE.document.createEvent("HTMLEvents") > evt.initEvent "change", True, False > > objIE.document.getElementById("add_filter_select").Value = "tracker_id" > objIE.document.getElementById("add_filter_select").dispatchEvent evt > > 2)以下の方法も、値がセレクトボックスに表示されただけでイベント発生せず。 > Dim evt As Object > Set evt = objIE.document.createEvent("HTMLEvents") > evt.initEvent "change", True, False > > With objIE.document.getElementById("add_filter_select") > .Value = "tracker_id" > .dispatchEvent evt > End With > > 3)JQueryを直接起動する(つもり。JavaScriptやJQueryは良く分から > ないので、Webに出ていたものを例にやってみました) > これも、値は表示されましたがイベントは起きませんでした。 > > Dim evt As Object > Set evt = objIE.document.createEvent("HTMLEvents") > evt.initEvent "change", True, False > > objIE.document.getElementById("add_filter_select").Value = "tracker_id" > objIE.navigate "JavaScript:addfilter('add_filter_select')" > > 以上です。 |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降