【问题标题】:vb.net Open File - Chrome & IEvb.net 打开文件 - Chrome & IE
【发布时间】:2013-07-02 15:03:29
【问题描述】:

我一直在做一个噩梦,得到一个打开文件的方法,直到我在 Chrome 中测试了这个过程并发现它有效,所以它只能是 IE 中的一个问题。不幸的是,有些用户肯定会使用 IE,所以我仍然需要解决这个问题。这是我得到的:

   Protected Sub OpenFile(filePath As String) 

    If dlCvFlName Is Nothing Or dlCvFlPath Is Nothing Then
        lblError.Text = 'The Candidate does not have a CV uploaded'
    Else
        Dim script As String = "window.open('" & filePath & "', 'Popup', '_newtab');"
        Page.ClientScript.RegisterStartupScript(Me.[GetType](), "open", script, True)
    End If
End Sub

OpenFile("www.domain.com/file/document.doc")

当我在 chrome 中运行此文件时,文件已成功打开,但在 IE 中绝对没有任何反应...

请帮忙...?

【问题讨论】:

  • 您是否尝试将 http:// 添加到文件路径?
  • 是的,我在实际代码中有这个,我只是忘了把它放在这里......虽然它在 chrome 中工作正常,现在真的让我很烦......

标签: asp.net vb.net internet-explorer google-chrome


【解决方案1】:

我相信问题出在您的 _newtab 姓名 - 通常不支持。

选项应该是:

_blank - URL 被加载到新窗口中。这是默认的

_parent - URL 被加载到父框架中

_self - URL 替换当前页面

_top - URL 替换任何可能加载的框架集

删除_newtab,然后重试..

还有

因为用户实际上并没有自己执行此操作 - 即您正在注入 javascript 以强制在 page_load 上弹出一个弹出窗口 - 浏览器弹出窗口阻止程序肯定会拦截它。

最好将window.open 方法附加到按钮并在页面上触发javascript,而不是回发并注入它。

【讨论】:

  • 我试过了,我认为它可能会工作,但仍然有同样的问题。当我单击按钮运行事件时,光标会短暂出现一个有趣的小感叹号,但没有消息... Grrrr ...
  • 对,它是 IE 中的弹出窗口拦截器,有什么建议可以解决这个问题..?
  • 你唯一能做的就是执行你的 window.open 而不做回发部分。即在页面上准备好您的代码。然后是一个按钮来触发该代码。这样,用户正在操作弹出窗口并且它不会在页面加载时触发。这将是最好的机会.. 弹出窗口拦截器对于这样的事情来说是一种痛苦。
  • 啊,这个按钮在一个更新面板中,所以如果我把它移到外面我可能会很酷,我明天第一件事就试试。感谢您的帮助,我会告诉您我的进展情况...
猜你喜欢
  • 2020-01-14
  • 1970-01-01
  • 1970-01-01
  • 2014-06-29
  • 1970-01-01
  • 2017-03-31
  • 1970-01-01
  • 2012-03-06
  • 1970-01-01
相关资源
最近更新 更多