【问题标题】:jquery load local filesjquery加载本地文件
【发布时间】:2013-12-16 07:36:13
【问题描述】:

我有这个小提琴http://jsfiddle.net/kd6Y4/1/

从同一站点上的不同页面获取 div 并显示它,问题是它可以完美地在线工作,就像这个直接链接 http://fiddle.jshell.net/kd6Y4/1/show/ 搜索手或两者中的和

但由于跨站点脚本限制,它无法离线工作,请帮助使其离线工作,因为我需要在 android 环境和离线浏览器中离线使用它

  $("#searchForm").submit(function (e) {
 e.preventDefault();
var results = $("#resultContainer");
var text = $("#search").val();
results.empty();
$.get("url here", function (data) {
var els = $(data).find("div:contains(" + text + ")").appendTo(results);
els.find('a').attr('href', function (_, href) {
    return 'url here/#' + $(this).closest('div').attr('id');
})
});
 });

[这个错误来了怎么解决]

XML Http 请求无法加载文件,请求的资源来源上没有“访问控制允许来源”标头,因此不允许访问

【问题讨论】:

  • 如果您使用的是本地文件系统 url,那么您需要将资源保存在同一目录中,否则同源策略将不允许您访问这些资源
  • 我已将这两个文件保存在同一目录中,但尚未工作
  • 抱歉这么多问题是 jquery 的新手
  • 使用的浏览器
  • chrome 我在禁用浏览器安全性时得到正确的结果有没有办法在离线使用时获得相同的结果?

标签: jquery html xss


【解决方案1】:

试试

jQuery(function(){
    $("#searchForm").submit(function (e) {
        e.preventDefault();
        var results = $("#resultContainer");
        var text = $("#search").val();
        results.empty();
        $.get("test2.html", function (data) {
            var els = $(data).find("div:contains(" + text + ")").appendTo(results);
            els.find('a').contents().unwrap();
            els.wrap(function(){
                return $('<a/>', {
                    href: 'test2.html#' +this.id
                })
            })
        }, 'html').fail(function(){
            console.log('arge', arguments)
        });
    });
})

要使本地文件正常工作,请关注this question

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-02
    • 2011-11-12
    相关资源
    最近更新 更多