0

ユーザーがドキュメントのパスを開くリンクボタンをクリックしてドキュメントを開くアプリケーションがあります

if (e.CommandArgument.ToString().ToLower().IndexOf(".pdf") > 0)
        ScriptManager.RegisterStartupScript(Page, this.GetType(), "myPopUp", "<script language='Javascript'>mywin=window.open('file:" + e.CommandArgument.ToString().Trim().Replace("\\", "/") + "', '', 'location=0,status=0,resizable=1,scrollbars=1,height=800px, width=1000px');</script>", false);

これで、ファイル名が xyz## のようなものである場合、xyz# として読み取られます。

ファイル名が xyz# の場合は、xyz と読みます。

解決策はありますか?

4

2 に答える 2

0
if (e.CommandArgument.ToString().ToLower().IndexOf(".pdf") > 0)
    ScriptManager.RegisterStartupScript(Page, this.GetType(), "myPopUp", "<script language='Javascript'>mywin=window.open('file:" + e.CommandArgument.ToString().Trim().Replace("\\", "/") + "', '', 'location=0,status=0,resizable=1,scrollbars=1,height=800px, width=1000px');</script>", false);

代わりに上記をこれに置き換えてください:

if (e.CommandArgument.ToString().ToLower().IndexOf(".pdf") > 0)
    ScriptManager.RegisterStartupScript(Page, this.GetType(), "myPopUp", "<script language='Javascript'>mywin=window.open('file:" + e.CommandArgument.ToString().Trim().Replace("\\", "/") + "', **'_self'**, 'location=0,status=0,resizable=1,scrollbars=1,height=800px, width=1000px');</script>", false);

問題を解決しました。

于 2012-05-09T18:29:37.983 に答える
0

私の意見では...これらはまさにIEによって引き起こされたこれらの問題ですが、善意のプログラマーによっても引き起こされています。

より良い解決策として、次のようなものがあります。

window.open('scriptUrl?パラメータ')

スクリプト内でパラメータからファイル名を取得し、リダイレクト後にファイルを返すなど。

于 2012-10-04T15:41:25.217 に答える