首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将javascript变量设置为外部标记文件

将javascript变量设置为外部标记文件
EN

Stack Overflow用户
提问于 2012-12-29 08:28:26
回答 3查看 1.4K关注 0票数 2

我有一个很长的markdown文件。我还有一个javascript文件,它在markdown上运行一个解析器。在我的javascript文件中,我设置了:

var text = "md/markdown.md“

这似乎没有像我希望的那样拉入markdown文件的内容。但是,如果我将markdown文件的内容复制并粘贴到变量中,那么一切都会正常工作。有没有办法设置这个javascript变量来获取这个外部markdown文件的内容?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-29 08:36:42

在web浏览器的上下文中,如果您希望JavaScript从URI获取数据,则通常会使用XMLHttpRequest对象。MDN有一个不错的tutorial about using XMLHttpRequest

大多数通用JavaScript库都包含用于XHR的包装器,其中包含兼容性修复(尤其是针对旧IE的)。我喜欢YUI。另一种选择是相对普遍的jQuery

对于问题中给出的情况,这不是问题,但要注意the same origin policy

票数 1
EN

Stack Overflow用户

发布于 2012-12-29 08:36:42

运行AJAX请求:

代码语言:javascript
复制
var ajaxRequest, text;  

try{
    // Opera 8.0+, Firefox, Safari
    ajaxRequest = new XMLHttpRequest();
} catch (e){
    // Internet Explorer Browsers
    try{
        ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try{
            ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e){
            // Something went wrong
            alert("Your browser broke!");
            return false;
        }
    }
}
ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4){
        text = ajaxRequest.responseText;
    }
}
票数 1
EN

Stack Overflow用户

发布于 2012-12-29 08:43:05

出于安全原因,Javascript无法直接读取本地文件。作为一种替代方法,您可以使用XMLHttpRequest来实现它。请检查stackoverflow上的链接:read external file with Javascript。此外,HTML5还提供了一种通过File API specification与本地文件交互的标准方法。您可以参考教程:http://www.html5rocks.com/en/tutorials/file/filesystem/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14077512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档