HTA [JavaScriptとVBScript] - コード変更後の非説明の問題に関する一般的なヘルプ

StackOverflow https://stackoverflow.com/questions/4389311

  •  10-10-2019
  •  | 
  •  

質問

多数のテキストファイルから情報を読み取り、次の擬似ロジックを使用して結果を画面に表示するHTAを書きました。

  • ディレクトリをループし、各テキストファイルのコンテンツを配列に追加します
  • アレイの2次元構造をループしてテーブルレイアウトを構築します
  • SetIntervalタイマーを使用して自らを更新します

    私はもともと純粋にvbscript/htmlでそれを書きましたが、それは完全に機能しましたが、その後、表示された結果を3番目の列または配列[x] [2]値でソートする方法が必要でした。

それで、私はJavaScriptに、よりフレンドリー/より速い配列の使用があるので、私はJavaScriptに目を向けました。擬似ロジックが次のように見えるように、機能を書き直しました。

  • ディレクトリをループして、各テキストファイルのコンテンツをJavaScriptアレイに追加します
  • Array [x] [2] idxでJavaScriptアレイを並べ替えます
  • セパレーターを使用して2D JSアレイを文字列に平らにします
  • ソートされたJS文字列をVBSアレイに分割し、まったく同じ方法でテーブルレイアウトをビルドします
  • SetIntervalタイマーを使用して自己を更新します

構文エラーを解決した後、最初のHTA負荷は私が意図したとおりに完全に機能します。しかし、今では、setinterval()の更新で、一般的なJSエラーが表示されます。

  • ライン1
  • CHAR:1
  • エラー:オブジェクトはこのプロパティまたはメソッドをサポートしていません
  • コード:0
  • url:file:///pathtohta.hta

setInterval()で使用している更新関数全体にコメントして、関数が呼び出されるようにしましたが、実際には何もしませんが、それでもエラーが発生します。

私はここからどこへ行くべきかについて途方に暮れており、誰かがこのエラーを引き起こしている可能性についていくつかのポインターを私に与えることができることを望んでいます。前もって感謝します。

役に立ちましたか?

解決

だから私は問題を見つけました:

何らかの理由で、スクリプト宣言の順序を切り替える必要がありました。元のエラーでは、この順序でスクリプトを宣言していました。

<script type="text/javascript">
   ...
</script>

<script type="text/vbscript">
   ...
</script>

修正は、(何らかの理由で)、私はデルカレーションをフリップフロップしなければならなかったということでした。

順序を変更して、VBScript機能が最初にリストされ、JavaScriptのものが2番目にリストされ、これによりエラーが解決しました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top