ページの読み込み時にFindIMControlメソッドを実行すると、オブジェクトが取得できない場合がある
対象製品
InputMan for ASP.NET 8.0J
詳細
Internet Explorer 8 を使用してクライアント側でページの読み込み時にFindIMControlメソッドを実行すると、すべてのInputManコントロールのオブジェクトが取得できません。
Internet Explorer 8ではページの読み込みが完了するまでInputManのオブジェクトが生成されないため、この現象は制限事項となります。
また、Internet Explorer 8以外のブラウザでは、ページの読み込み時に以下のオブジェクトが取得できません。
住所検索エクステンダ
ショートカットエクステンダ
バルーンチップエクステンダ
これは、上記エクステンダを参照するInputManコントロールが生成されてから、オブジェクトが生成されるためです。この現象は上記エクステンダ使用時の制限事項となります。
Internet Explorer 8ではページの読み込みが完了するまでInputManのオブジェクトが生成されないため、この現象は制限事項となります。
また、Internet Explorer 8以外のブラウザでは、ページの読み込み時に以下のオブジェクトが取得できません。
これは、上記エクステンダを参照するInputManコントロールが生成されてから、オブジェクトが生成されるためです。この現象は上記エクステンダ使用時の制限事項となります。
回避方法
ページ読み込み時にInputManコントロールのオブジェクトを取得するには、setTimeoutメソッドを使用してFindIMControlメソッドを実行します。
以下は、ページの読み込み時にテキストコントロールに文字列を設定する例です。
[Javascript]
<script type="text/javascript">
window.onload = function () {
setTimeout(function () { FindIMControl("GcTextBox1").SetText("SampleText"); }, 100);
};
</script>
以下は、ページの読み込み時にテキストコントロールに文字列を設定する例です。
[Javascript]
<script type="text/javascript">
window.onload = function () {
setTimeout(function () { FindIMControl("GcTextBox1").SetText("SampleText"); }, 100);
};
</script>