因为指定了ContentType。不过你说的“把超链接导出来”是什么意思?

解决方案 »

  1.   

    导出到Excel后,Excel里面还是有DataGrid的超链接
      

  2.   

    Private Sub DisableControls(ByVal gv As Control)
            Dim lb As LinkButton = New LinkButton()
            Dim l As Literal = New Literal()
            Dim name As String = String.Empty        Dim i As Integer
            For i = 0 To gv.Controls.Count - 1            If (TypeOf gv.Controls(i) Is LinkButton) Then
                    l.Text = CType(gv.Controls(i), LinkButton).Text
                    gv.Controls.Remove(gv.Controls(i))
                    gv.Controls.AddAt(i, l)
                ElseIf (TypeOf gv.Controls(i) Is DropDownList) Then
                    l.Text = CType(gv.Controls(i), DropDownList).SelectedItem.Text
                    gv.Controls.Remove(gv.Controls(i))
                    gv.Controls.AddAt(i, l)
                ElseIf (TypeOf gv.Controls(i) Is HyperLink) Then
                    l.Text = CType(gv.Controls(i), HyperLink).Text
                    gv.Controls.Remove(gv.Controls(i))
                    gv.Controls.AddAt(i, l)
                End If
                If (gv.Controls(i).HasControls()) Then
                    DisableControls(gv.Controls(i))
                End If        Next
        End Sub    Protected Sub btnExport_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExport.Click
            Me.DisableControls(OTDetail)
            Response.ClearContent()
            Response.AddHeader("content-disposition", "attachment; filename=OTFormNotApprove.xls")
            Response.ContentType = "application/excel"
            Dim sw As StringWriter = New StringWriter()
            Dim htw As HtmlTextWriter = New HtmlTextWriter(sw)
            OTDetail.RenderControl(htw)
            Response.Write(sw.ToString())
            Response.End()    End Sub
      

  3.   

    导出之前先把DataGrid DisableControls一下就好了
      

  4.   

    遇到同样的问题!!
    不知道楼用JavaScript如何实现???