【问题标题】:How to Inject JavaScript in Web Page to Automatically Hit Refresh Button如何在网页中注入 JavaScript 以自动点击刷新按钮
【发布时间】:2021-11-30 22:39:47
【问题描述】:

我想每 1 分钟更新一次给定的数据集。理想情况下,到目前为止,我已经了解最好的方案是 Power BI 每 1 小时或每 15 分钟一次。但是,我注意到,如果我单击工作区中的“立即刷新”按钮,随后每次单击该按钮时相应的仪表板和报告都会更新!-尽管需要重新加载这些页面,但这可能使用像Auto Refresh Plus extension 这样可以完成这项工作的工具来解决。

因此,有没有办法将 JavaScript 嵌入到下面屏幕截图的网页中,它会自动点击“立即刷新”按钮,例如1分钟? “立即刷新”按钮位于“test_rig_dashboard”右侧的灰色框中的“数据集”左侧(由于屏幕截图而无法看到)。

我研究过的最相似的方法是 this 插入以下 JavaScript:

javascript:if(window.autoRefreshInterval) { clearInterval(window.autoRefreshInterval); };
window.autoRefreshInterval = setInterval(function() { jQuery(".refresh").click(); },60000)

关于如何在此处实施的任何想法?感谢您的帮助!

【问题讨论】:

    标签: javascript html jquery powerbi reload


    【解决方案1】:
    • 右键单击感兴趣的元素,然后单击“检查”。应该打开您的浏览器开发工具,您可以在其中看到类似this 的内容。
    • 右键单击元素对应的 html 并单击“添加属性”,然后添加一个 id 属性,确保它不存在。您的元素现在应该看起来像 this
    • 要验证现在是否可以选择您的元素,请转到开发工具的控制台选项卡并使用 document.getElementById() method
    • 最后,在setInterval() 中使用您选择的click() 方法来模拟周期性地单击元素,如this。第二个参数是以毫秒为单位的时间,因此在您的情况下,它应该等于 60*1000。

    【讨论】:

    • 我必须找到一种方法来保存检查元素更改,以便它可以重复运行,但我接受答案,因为它回答了我原来的问题,谢谢!
    【解决方案2】:

    对于未来的用户,只是为了在@ptourlas 的答案上加起来,我通过仅使用按钮的类名来实现类似的操作,因为在这种情况下,按钮没有 id。跳过“元素”中的“添加属性”,并在“控制台”中执行:

    setInterval(function(){document.getElementsByClassName("<class name>")[0].click();},30000);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-22
      • 1970-01-01
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-14
      相关资源
      最近更新 更多