3

私が取り組んでいるオブジェクトは JavaScript でインスタンス化されていますが、VBScript で使用されています。一方のコード パスでは、変数M.DOM.IPtが定義されて値を持ちますが、もう一方のコード パスではそうではありません。定義されているかどうかを検出する必要があります。M.DOMが定義されており、両方のコード パスでアクセス可能であることを確認しました。私が試したすべてのテストは、単にこのエラーになります。

エラー: オブジェクトはこのプロパティまたはメソッドをサポートしていません

私が試してみました:

  • IsEmpty(M.DOM.IPt)
  • M.DOM.IPt is Nothing
  • isNull(M.DOM.IPt)

変数が定義されていないことを検出してエラーを回避する方法はありますか?

注:On Error Resume Nextエラーを単純に無視することはできますが、実際にはそれを検出し、条件付きで何かを行う必要があります。

4

3 に答える 3

2
    関数 SupportsMember(object, memberName)
      エラー時再開次へ

      薄暗い×
      Eval("x = オブジェクト。"+memberName)

      エラー = 438 の場合
        SupportsMember = False
      そうしないと
        SupportsMember = True
      終了条件

      On Error Goto 0 'エラーをクリア
    終了機能
于 2008-10-30T17:54:49.717 に答える
1
On Error Resume Next
Err.Clear
MyVariable=M.DOM.Ipt
If Err.Number<> 0 Then
    'error occured - Ipt not defined
    'do your processing here
Else
    'no error - Ipt is defined
    'do your processing here
End If
于 2008-10-30T17:48:48.840 に答える
0

On Error Goto ラベルを試しましたか?

于 2008-10-30T17:32:41.510 に答える