Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 超链接单击应在默认程序中打开文档_Javascript_Jquery_Html_Plugins - Fatal编程技术网

Javascript 超链接单击应在默认程序中打开文档

Javascript 超链接单击应在默认程序中打开文档,javascript,jquery,html,plugins,Javascript,Jquery,Html,Plugins,我的html文档中有一个超链接 <a href="file://c:/directory/file.txt">click</a> 单击超链接时,指定的文件将在浏览器中打开 是否可以在记事本或升华文本或任何文本编辑器中打开该文件,在本例中,文本编辑器是txt文件类型的默认程序。我可以在javascript或jquery中以编程方式完成它吗。有什么办法吗 注意:这只是一个独立的应用程序。我开发了一个插件,可以在给定源目录中的所有文件中搜索我作为输入提供的模式,并打印出包含该

我的html文档中有一个超链接

<a href="file://c:/directory/file.txt">click</a>
单击超链接时,指定的文件将在浏览器中打开

是否可以在记事本或升华文本或任何文本编辑器中打开该文件,在本例中,文本编辑器是txt文件类型的默认程序。我可以在javascript或jquery中以编程方式完成它吗。有什么办法吗

注意:这只是一个独立的应用程序。我开发了一个插件,可以在给定源目录中的所有文件中搜索我作为输入提供的模式,并打印出包含该模式的目录中的所有文件名。将其打印到输出报告html文件中。我只想将文件路径名链接到默认编辑器,这样他就可以编辑并保存它。没有安全问题。能做到吗


如果没有,还有其他方法来完成这项任务吗?我可以生成任何格式的输出报告。请提供帮助。

如果不影响浏览器的安全性,则无法执行此操作。您必须修改TXT的浏览器MIME类型以及与之相关的默认程序的MIME类型。如果它在您的本地网络上,并且您在一个域上,并且每个用户在其计算机上都有管理员权限,理论上您可以进行注册表黑客攻击,并更改在外部编辑器中打开文本文件的默认设置,但这会损害安全性,如果您在域网络中,您的管理员权限将从本地计算机上被剥夺。

在不影响浏览器安全的情况下,您无法做到这一点。您必须修改TXT的浏览器MIME类型以及与之相关的默认程序的MIME类型。如果它在您的本地网络上,并且您在一个域上,并且每个用户在其计算机上都有管理员权限,理论上您可以进行注册表黑客攻击,并更改在外部编辑器中打开文本文件的默认设置,但这会损害安全性,如果您在域网络中,您的管理员权限已从本地计算机上剥离。

由于安全原因,HTML/JavaScript不允许访问本地文件系统

JavaScript和DOM为恶意作者提供了通过web在客户端计算机上运行的脚本的可能性。浏览器作者使用两个限制来控制这种风险。首先,脚本在沙箱中运行,在沙箱中它们只能执行与web相关的操作,而不能执行像创建文件这样的通用编程任务。其次,脚本受同源策略的约束:来自一个网站的脚本无法访问发送到另一个网站的用户名、密码或cookie等信息

您必须发出服务器请求才能获取资源。

由于安全原因,HTML/JavaScript不允许访问本地文件系统

JavaScript和DOM为恶意作者提供了通过web在客户端计算机上运行的脚本的可能性。浏览器作者使用两个限制来控制这种风险。首先,脚本在沙箱中运行,在沙箱中它们只能执行与web相关的操作,而不能执行像创建文件这样的通用编程任务。其次,脚本受同源策略的约束:来自一个网站的脚本无法访问发送到另一个网站的用户名、密码或cookie等信息


您必须发出服务器请求才能获取资源。

如其他人所述,您可能无法在不影响浏览器安全的情况下执行此操作。但我发现了一个可能有用的链接


编辑:这将打开一个空记事本,并且它仅在windows上工作。您可以使用js来区分不同的操作系统,并相应地运行它们的默认文本编辑器,但我不会这样做。为什么不改用在线编辑器呢?

正如其他人提到的,在不影响浏览器安全的情况下,您可能无法做到这一点。但我发现了一个可能有用的链接


编辑:这将打开一个空记事本,并且它仅在windows上工作。您可以使用js来区分不同的操作系统,并相应地运行它们的默认文本编辑器,但我不会这样做。为什么不使用在线编辑器呢?

我在寻找类似的东西,发现了一个。也许有人会发现它很有用。
如果您只想在自己的计算机上执行此操作,它会工作。

我正在寻找类似的功能,并找到了一个。也许有人会发现它很有用。
如果您只想在自己的计算机上执行此操作,它会起作用。

如果不影响浏览器的安全性,则无法执行此操作。你必须修改浏览器的MIME类型,用于TXT和默认文件关联。这是一个Intranet站点,还是一个本地独立的应用程序?如果不是本地的,你可以考虑为什么需要它在记事本中打开。它能在文本区打开吗?此外,这可以通过允许用户进行更改然后将其保存(返回file.txt或,例如,fileN.txt)来实现。如果您通过链接而不是链接指向它,您可以抓取内容,然后将其作为文件打开

d mime类型使用客户端下载程序,允许用户选择类似记事本的开场白来处理文件…@Teemu。它只是一个独立的应用程序。没有安全问题。我还编辑了问题的描述。请看一下,并向我建议一种方法。在不影响浏览器安全性的情况下,您无法做到这一点。你必须修改浏览器的MIME类型,用于TXT和默认文件关联。这是一个Intranet站点,还是一个本地独立的应用程序?如果不是本地的,你可以考虑为什么需要它在记事本中打开。它能在文本区打开吗?此外,还可以通过允许用户进行更改然后将其保存(返回到file.txt或,例如,fileN.txt)来实现这一点。如果您通过链接而不是链接指向它,则可以获取内容,然后使用客户端下载程序将其作为奇怪的mime类型打开,允许用户选择类似记事本的开瓶器来处理文件…@Teemu。它只是一个独立的应用程序。没有安全问题。我还编辑了问题的描述。请看一下并给我一个建议。这会打开一个空记事本,为什么不使用文件路径呢?也仅限IE。接得好!我没有意识到我有足够的代表对这些问题发表评论。哎呀!这应该是一个评论。事实上我打算回答这样的问题,但我在等待OP对我上面评论的回答。。。如果它是一个网站,这可能是行不通的,即使在IE中也不行。@parzival谢谢你的回答。这是一个独立的应用程序。我开发了一个插件,可以在给定源目录中的所有文件中搜索我作为输入提供的模式,并打印出包含该模式的所有文件名。将其打印到输出报告html文件中。我只想将文件路径名链接到默认编辑器。没有安全问题。可以吗?这会打开一个空记事本,为什么不使用文件路径呢?也仅限IE。接得好!我没有意识到我有足够的代表对这些问题发表评论。哎呀!这应该是一个评论。事实上我打算回答这样的问题,但我在等待OP对我上面评论的回答。。。如果它是一个网站,这可能是行不通的,即使在IE中也不行。@parzival谢谢你的回答。这是一个独立的应用程序。我开发了一个插件,可以在给定源目录中的所有文件中搜索我作为输入提供的模式,并打印出包含该模式的所有文件名。将其打印到输出报告html文件中。我只想将文件路径名链接到默认编辑器。没有安全问题。能做到吗?谢谢阿米特的回答。这只是一个独立的应用程序。所以没有安全问题。我已经编辑了问题的描述。请看一下并向我建议方法。谢谢amit的回答。这只是一个独立的应用程序。所以没有安全问题。我已经编辑了问题的描述。请看一下,并向我建议方法。
<script type="text/javascript" language="javascript">
    function RunFile() {
        WshShell = new ActiveXObject("WScript.Shell");
        WshShell.Run("c:/windows/system32/notepad.exe", 1, false);
    }
</script>