gpt4 book ai didi

javascript - 使用 JavaScript 获取远程代码/文本?

转载 作者:行者123 更新时间:2023-11-28 14:03:06 29 4
gpt4 key购买 nike

所以我正在制作一个动态下拉选择表单,我需要每个菜单从预构建的 html block (位于,比如说 http://example.com/menu/choices )传播可能的选择,有没有一种简单的方法来使用 javascript获取远程页面的 html 然后将其插入页面?我知道我可以使用 .write() 插入代码,我只是不知道如何获取它。

谢谢!

最佳答案

实际上,您不能使用 write 来插入代码,除非初始页面渲染完成后。

加载代码

我第一次看到您的问题是您想要加载代码 - 例如 JavaScript。以下是您如何做到这一点,但请参阅下文。

最简单的方法是,如果您的代码存在于 JavaScript 文件中的源位置,并准备好以正常方式包含在文件中。在这种情况下,您所需要做的就是创建一个 script 元素并将其添加到文档中:

var script = document.createElement('script');
script.type = "text/javascript";
script.src = /* ... the URL of the code ... */;
document.body.appendChild(script);
document.body.removeChild(script);

请注意最后一行,将 script 节点插入文档后立即将其删除。您只需插入节点,即可立即触发获取和解释 JavaScript 文件的过程。您可以立即删除脚本元素(或不删除,由您决定)。

在上面,我已将元素添加到 document.body 中,因为它很方便,而且添加到哪里并不重要。然而,您看到的大多数执行此操作的脚本通常会将其添加到 head 中。那也很好。更多内容请参见this article ,尽管它专注于 Prototype 库。

说到库,尽管如此,如果您使用像 jQuery 这样的 JavaScript 库, Closure , Prototype , YUI ,或any of several others ,它可能会让你(甚至)更容易。

<小时/>

更新:您后来添加了 jQuery 标签吗?我原来没看到。使用 jQuery,如果您从与文档相同的源加载脚本,则可以使用 getScript function :

jQuery.getScript('ajax/test.js');
// Or $.getScript('ajax/test.js');

但是getScript与上面的技术不同。 getScript 将受到 Same Origin Policy 的阻碍,而添加 script 标记则不然。

加载标记

如果您想加载 HTML 标记并将其应用到页面的一部分,可以使用 jQuery.load 轻松完成:

$('#someid').load("yoururl.here");

这会将 id 为“someid”的元素的内容替换为从给定 URL 返回的 HTML。 Here's a live example选项加载到selectanother中将文本(段落)加载到 div 中。使用库(例如 jQuery)这会更容易,因为库通常会为您处理某些元素,因此存在一些问题。

关于javascript - 使用 JavaScript 获取远程代码/文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3910785/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com