是否可以禁用CMS冲突的本机JavaScript onSubmit脚本?



我正在构建一个非常简单的 5 个问题的多项选择测验"游戏",它只问 5 个使用 HTML 单选按钮显示的简单问题,以及一个 JavaScript 函数,用于验证用户的选择是否正确,并迭代一个"分数",当单击提交按钮时,显示"您从 X 中得到 X 正确"。基本上是一个.js 101项目。

我正在使用一个名为Blackbaud Internet Solutions(BBIS(的内容管理系统。它是Blackbaud专有的,允许用户构建一个功能齐全的网站,与Blackbaud的CRM数据库集成。它允许您使用 HTML 构建布局,但是在内置的 HTML 编辑器中,您不会声明任何 !DOCTYPE或<body>或<head>标签,您只需从第一个或其他标签开始,系统将使用其本机.aspx功能构建每个页面。 BBIS确实有一个复杂的样式表部分,允许您创建和堆叠.css,但是JavaScript的处理方式不同。

想要在页面上包含JavaScript的Web开发人员必须通过创建BBIS所谓的"无格式文本部分"来插入该脚本。("零件"就像一个小部件或块等(无格式文本部分允许您在<脚本>之间插入任何内容...和。。。</脚本>在:

  • <头>
  • <身体>
  • 在<体的末尾>

在我的工作站本地,.html、.css和.js文件都可以完美地协同工作。在BBIS中,HTML渲染很棒,CSS看起来不错,但是,JavaScript方面根本不起作用。当您单击提交按钮时,屏幕闪烁,表单的 5 个单选按钮将重置为未选中。

使用Chrome的开发人员工具,我可以在DOM中看到CMS(BBIS(为聚会带来了大量不必要的JavaScript。我敢肯定,在具有更多元素的页面上,这些脚本具有完美的逻辑功能。但是这个页面实际上是一个白色背景,页面中间只有一个测验。我的onSubmit按钮功能在同一页面上运行了3-4个其他"onSubmit"脚本,我不禁认为这就是问题所在。

在DOM中,我可以看到我的JavaScript函数已入到<head>标签中,因为这是我将其配置为在BBIS"无格式文本部分"中加载的地方。所有原生BBIS"onSubmit脚本"都出现在<正文>中。有没有办法在<头>中插入一些JavaScript,从而"取出"那些<体>BBIS"onSubmit"脚本?

当您收到空白页面时,也许您会在提交时离开CMS页面? 您的 html 表单是什么样的? 另一件事是,你在使用jquery吗?大多数CMS都带来了自己的jquery版本。尝试在无冲突模式下使用 jquery https://api.jquery.com/jquery.noconflict/

编辑无格式的文本部分,然后选择"高级选项"按钮。 您可以选择从那里将您的部分放在<head>中。

最新更新