VB脚本和chrome

时间:2012-02-09 16:10:48

标签: vb.net

我在修改用VB.NET编写的现有网站时遇到了很多麻烦。

有人可以向我解释一下VB.NET-chrome关系的基础知识吗?

我遇到的具体问题是通过网站发送邮件,添加相关代码没有问题,我觉得在开始寻找bug之前我需要了解更多。

在网站上可以选择向人员列表发送电子邮件。此选项适用于IE,但在Firefox和Chrome中不起作用。我基本上有一个表单标签,其中包含一个表,其中包含每个名称旁边都有一个复选按钮的人员列表。当你点击发送时,有一个像这样定义的功能

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

    Dim sTo As String, sFrom As String, sSubject As String, sBody As String
    Dim sCc As String, sBcc As String
    Dim MyMail As MailMessage = New MailMessage

    sFrom = "Laboratory Mail system sent from " & Session.Contents("UserNameEng") & " <dbsystem@mscc.huji.ac.il>"
    sTo = Trim(Request.Form("EmailTo")) & txtTo.Text
    sCc = Trim(Request.Form("EmailCc")) & txtCc.Text
    sSubject = Trim(txtSubject.Text)
    sBody = Trim(txtBody.Text)
    sBody = sBody.Replace(vbCrLf, "<br />") 'new

    MyMail.Headers.Add("Reply-To", Session.Contents("UserEmail"))
    MyMail.From = sFrom
    MyMail.To = sTo
    MyMail.Subject = sSubject
    MyMail.BodyFormat = MailFormat.Html 'new
    'MyMail.Body = sBody
    Select Case optDirection.SelectedValue.ToString
        Case "BodyRtl"
            MyMail.Body = "<style> body {direction: rtl} </style>" & sBody
        Case "BodyLtr"
            MyMail.Body = "<style> body {direction: ltr} </style>" & sBody
    End Select
    ' MyMail.Body = "<style> body {direction: rtl} </style>" & sBody 'new
    ' MyMail.BodyEncoding = System.Text.Encoding.GetEncoding("iso-8859-8-i")

    MyMail.Cc = sCc

    If chkCopyForMe.Checked Then
        MyMail.Bcc = Session.Contents("UserEmail")
    End If

    'MyMail.BodyFormat = MailFormat.Text
    Select Case optPriority.SelectedValue.ToString
        Case "Normal"
            MyMail.Priority = MailPriority.Normal
        Case "High"
            MyMail.Priority = MailPriority.High
        Case "Low"
            MyMail.Priority = MailPriority.Low
    End Select

    If Trim(UploadFile.Value) <> vbNullString Then
        Dim myAttachment As New MailAttachment(GetAttachment(Trim(UploadFile.Value)))     '(Trim(UploadFile.Value)) 
        MyMail.Attachments.Add(myAttachment)
    End If

    SmtpMail.SmtpServer = "pluto.mscc.huji.ac.il"
    Try
        SmtpMail.Send(MyMail)
        Response.Redirect("SentMessage.aspx?m=1")
    Catch ex As Exception
        lblComment.Text = "Problem With Sending Mail<br />" & ex.Message
        'Response.Redirect("SentMessage.aspx?m=2")
    End Try
End Sub

假设将邮件发送到选定的框。在IE中邮件到达,在Chrome中它没有。

2 个答案:

答案 0 :(得分:0)

VB.NET是一种服务器端技术 - 它将HTML输出到浏览器。

浏览器与此HTML交互并可能向服务器发送响应(单击链接,发布表单等) - VB.NET代码可以解释这些并使用HTML进行响应。

这与无论的浏览器(Chrome,IE,Firefox,Opera或其他任何浏览器)的工作方式相同。

答案 1 :(得分:0)

此代码与您的问题无关。浏览器永远不会看到它,只看到服务器。

你在.aspx文件中的某个地方犯了一个错误:IE正确地猜测你真正想要的是什么,Chrome不是。

Firefox会发生什么?