gpt4 book ai didi

javascript - 使用 AJAX 注入(inject) javascript 和 HTML

转载 作者:行者123 更新时间:2023-12-02 20:33:19 24 4
gpt4 key购买 nike

首先我想说,虽然这是我第一次在这里发帖,但这些版 block 对我帮助很大。话虽如此,我遇到了一个关于 AJAX 和脚本的奇怪问题。

你看,在我的 Web 应用程序中,我使用了自定义 JS 上下文菜单。现在,每个菜单都根据对象以及对象是否存在来实现特定功能。

E.x:如果我们有一个上部菜单占位符,但没有上部菜单,则上下文菜单将有一个选项,即“添加菜单”。但是假设我们已经有了上层菜单,上下文菜单将有不同的选项,例如“编辑菜单”等...

到目前为止一切顺利,但是,假设我们有一个上部菜单占位符并且没有菜单,然后我们添加了菜单(页面上仍然没有刷新)我需要生成一个新的上下文菜单并注入(inject)它,对吗?所以我就是这样做的以及我刚刚构建的新菜单。

所有代码都进入相同的 div,其中旧的上下文菜单脚本和上部菜单占位符基本上被覆盖。现在菜单本身是 HTML 格式的,因此它会覆盖当前的代码,但 JS 的行为很奇怪,即使我覆盖了它的代码,现在也会显示 2 个上下文菜单(旧的和新的)。

我需要一些如何在不刷新页面的情况下摆脱旧的上下文菜单脚本的方法。有什么想法吗?

附注如果这有什么区别的话,所有的 JS 都是动态生成的(我不认为有区别。)

最佳答案

好吧,经过一番头脑 Storm 后,我想通了..(问题还没有解决)这就是ajax函数吧?

$.ajax({
type: "GET",
url: "../../../Tier1/EditZone/Generate.aspx?Item=contentholder&Script=true",
dataType: "html",
success: function (data) {
$('#CPH_Body_1_content_holder').html(data);
}
});

现在他们的函数使用带有事件处理程序的页面,该事件处理程序按如下方式重新处理数据:response.write(answer) 它只是让我意识到,当您使用response.write时,它会在编译并运行后发送代码我们的案例位于Generate.aspx页面。

所以脚本会运行,但不会在我想要运行的页面中运行,因此我无法覆盖它......我真傻。

我认为它会以实际字符串的形式返回数据,然后才将代码注入(inject)到容器 div 中。

我会让大家知道这是否有效。欢呼并感谢这些论坛提供的建议。

关于javascript - 使用 AJAX 注入(inject) javascript 和 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3710041/

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