0

私は asp.net とこのコードを使用して、IE でローカル ファイルを開きます。

<script type="text/javascript" language="javascript">
    function RunFile() {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run("d:/11.doc", 1, false);
    }
</script>


<input type="button" value="Run File" onclick="RunFile();"/>

結果は大丈夫です:-)

しかし、アドレスローカルファイルをスクリプトに送信してから、このファイルを実行したい:

例:

<script type="text/javascript" language="javascript">
    function RunFile() {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run(**AddressFile**, 1, false);
    }
</script>



protected void Page_Load(object sender, EventArgs e)
{
**AddressFile** = "d:/11.doc";
}
4

1 に答える 1

0

サーバー側から javascript 関数を動的に呼び出したい場合は、JS 関数にパラメーターを追加して、ファイル名を次のように取得します。

<script type="text/javascript" language="javascript">
    function RunFile(fileName) {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run(fileName, 1, false);
    }
</script>

そして、サーバー側で次のように javascript 関数を呼び出します。

this.ClientScript.RegisterStartupScript(this.GetType()
,"somekey"
,"RunFile('"+file_parameter_on_server_side+"')",true)";

詳細と完全な例はこちら。

于 2012-12-11T20:46:54.917 に答える