Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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 - Fatal编程技术网

Javascript 打开可折叠文件后自动刷新其内容

Javascript 打开可折叠文件后自动刷新其内容,javascript,jquery,Javascript,Jquery,我想在打开可折叠文件时自动刷新其内容。我怎么能做到呢 我有以下代码: 每次它出现时都需要刷新。 如果要在显示过程开始时触发刷新,可以使用show.bs.collapse事件 $('#demo').on('show.bs.collapse', function () { // Put here your code for refreshing the div content (ajax call, etc.) }); $('#demo').on('shown.bs.collapse',

我想在打开可折叠文件时自动刷新其内容。我怎么能做到呢

我有以下代码:


每次它出现时都需要刷新。

如果要在显示过程开始时触发刷新,可以使用
show.bs.collapse
事件

$('#demo').on('show.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
$('#demo').on('shown.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});

如果要在div完全可见(转换已完成)时触发刷新,则需要显示
show.bs.collapse
事件

$('#demo').on('show.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
$('#demo').on('shown.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
如果需要,可以在隐藏div时使用等效的事件
hide.bs.collapse
hidden.bs.collapse


我希望它能帮助您

如果您想在显示过程开始时触发刷新,您可以使用
show.bs.collapse
事件

$('#demo').on('show.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
$('#demo').on('shown.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});

如果要在div完全可见(转换已完成)时触发刷新,则需要显示
show.bs.collapse
事件

$('#demo').on('show.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
$('#demo').on('shown.bs.collapse', function () {
  // Put here your code for refreshing the div content (ajax call, etc.)
});
如果需要,可以在隐藏div时使用等效的事件
hide.bs.collapse
hidden.bs.collapse


我希望它能帮助您做到这一点,您需要使用AJAX、异步Javascript和XML

如果可能,创建一个单独的页面,
collapsable.html
,其中只包含collapsable div的内容

然后,将事件侦听器添加到按钮

document.querySelector("a[data-toggle='collapse']").addEventListener("click", function() {
    output("Refreshing content...");
    var xmlhttp = new XMLHttpRequest(); // AJAX
    xmlhttp.open("GET", "collapse.html"); // Replace with your filename here
    xmlhttp.onreadystatechange = function() {
        if(xmlhttp.readyState === 4) { // If finished loading
            if(xmlhttp.status === 200) { // If loaded correctly
                output(xmlhttp.responseText);
            } else {
                output("Error loading content -- check your internet connection");
        }
    }
    xmlhttp.send();
});
您需要定义
output
,我用它来设置div的内容

目前,它将内容覆盖为“刷新内容…”,使用AJAX发出internet请求,然后如果一切顺利,用实际内容替换“加载”。如果不想在加载现有内容时覆盖现有内容,可以删除
输出(“刷新内容…”)

function output(content) {
    document.querySelector("#demo").innerHTML = content;
}
您还可以使用AJAX再次加载整个页面,但随后可能需要解析响应数据


阅读有关AJAX的更多信息--

要做到这一点,您需要使用AJAX、异步Javascript和XML

如果可能,创建一个单独的页面,
collapsable.html
,其中只包含collapsable div的内容

然后,将事件侦听器添加到按钮

document.querySelector("a[data-toggle='collapse']").addEventListener("click", function() {
    output("Refreshing content...");
    var xmlhttp = new XMLHttpRequest(); // AJAX
    xmlhttp.open("GET", "collapse.html"); // Replace with your filename here
    xmlhttp.onreadystatechange = function() {
        if(xmlhttp.readyState === 4) { // If finished loading
            if(xmlhttp.status === 200) { // If loaded correctly
                output(xmlhttp.responseText);
            } else {
                output("Error loading content -- check your internet connection");
        }
    }
    xmlhttp.send();
});
您需要定义
output
,我用它来设置div的内容

目前,它将内容覆盖为“刷新内容…”,使用AJAX发出internet请求,然后如果一切顺利,用实际内容替换“加载”。如果不想在加载现有内容时覆盖现有内容,可以删除
输出(“刷新内容…”)

function output(content) {
    document.querySelector("#demo").innerHTML = content;
}
您还可以使用AJAX再次加载整个页面,但随后可能需要解析响应数据


阅读有关AJAX的更多信息--

没有简单的解决方案吗?因为我正在开发一个购物软件,所以我只能使用Javascript、HTML和CSS。实际上,每次触发可折叠文件时需要重新加载的内容是ShopSoftware的一个变量,这很简单。。。这是加载内容的标准方式,并且它只使用Javascript和HTML…它只是很长。如果您不理解部分代码,请询问。:)难道没有简单的解决办法吗?因为我正在开发一个购物软件,所以我只能使用Javascript、HTML和CSS。实际上,每次触发可折叠文件时需要重新加载的内容是ShopSoftware的一个变量,这很简单。。。这是加载内容的标准方式,并且它只使用Javascript和HTML…它只是很长。如果您不理解部分代码,请询问。:)