vb.net - 运行时错误 : Object expected not working inside of an if statement

标签 vb.net visual-studio-2010 jscript

当我删除外部 if 语句时,addmessage将创建一个链接,该链接将跳转到 txtBillTxtSetSrc单击时的字段。在 if 语句中,链接显示

Microsoft JScript runtime error: Object expected".



它在没有 if 语句的情况下工作。为什么它不起作用?
If Me.txtBillTxtSetSrc.Text.Trim.Length > 0 Then
  validateExpression = "^[BCGHJSR][0-9][0-9]"
  ismatch = Regex.IsMatch((txtBillTxtSetSrc.Text).ToUpper, validateExpression)

  If ismatch = False Then
    tempErrorMsg = LASPBS_Classes.Errors.MainframeError.getError("281W") ' Text Set Must be B01-B99, etc.
    Me.MessageCenter.addMessage(tempErrorMsg, "#", "txtBillTxtSetSrc", "form1", "E")
    Me.MessageCenter.Visible = True
  End If
End If

最佳答案

检查以确保 txtBillTxtSetSrc 在使用时有效。如果它是 Nothing(null) 那么你就不能访问 .Text 属性等等。此外,如果它是某种东西,它可能是属性之一。我会逐一检查它们。

 If Not (Me.txtBillTxtSetSrc is Nothing) andalso (Me.txtBillTxtSetSrc.Text.Trim.Length > 0) Then 
    validateExpression = "^[BCGHJSR][0-9][0-9]"
    ismatch = Regex.IsMatch((txtBillTxtSetSrc.Text).ToUpper, validateExpression)

    If ismatch = False Then
      tempErrorMsg = LASPBS_Classes.Errors.MainframeError.getError("281W") ' Text Set Must be B01-B99, etc.
      Me.MessageCenter.addMessage(tempErrorMsg, "#", "txtBillTxtSetSrc", "form1", "E")
      Me.MessageCenter.Visible = True
  End If
 End If

关于vb.net - 运行时错误 : Object expected not working inside of an if statement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13568447/

相关文章:

c# - 按名称访问 ResourceDictionary

vb.net - 通过 LINQ 向树添加节点在运行时创建 "query operator not supported"

javascript - 通过在第一个组合框中进行选择来更改组合框中的值

wcf - Visual Studio 2010 SharePoint 可替换参数未被替换

asp.net - 尝试使用 Visual Studio 2010 和 AJAX 扩展的问题

javascript - ScriptControl.AddCode 不执行代码?

c# - 有没有办法在 VB 中转义根命名空间?

visual-studio - MSTEST - 断言失败后继续

wsh - JavaScript 中的文件结尾

wsh - 获取在 Windows Script Host 中运行的 JScript 错误的行号