javascript - 可以禁用 CMS 的冲突 native JavaScript onSubmit 脚本吗?

标签 javascript html css blackbaud

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

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

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

  • <头>
  • <正文>
  • 在的结尾

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

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

在 DOM 中,我可以看到我的 JavaScript 函数已插入到 标记中,因为这是我将其配置为加载到 BBIS“未格式化文本部分”内部的位置。所有原生 BBIS“onSubmit 脚本”都出现在 中。有没有一种方法可以将一些 JavaScript 插入到 中,从而“删除”那些 BBIS“onSubmit”脚本?

最佳答案

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

关于javascript - 可以禁用 CMS 的冲突 native JavaScript onSubmit 脚本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50349894/

相关文章:

javascript - Content-Disposition 附件是否被 XMLHttpRequest 阻止?

javascript - 为 Angular Directive(指令)提供模型名称以访问其在父级中的范围

html - 将光标从下拉按钮移开会导致它改变颜色

html - 使一个表格行垂直对齐到中间,另一行垂直对齐到顶部的最少代码?

css - Angular 8 : Change Height in Mat-form-field to Specific pixel number

javascript - 在 AngularJS/TypeScript/ES6 中定义/访问拦截器时出现 TypeError

Javascript不会更新或显示系统时间<怎么回事?

html - CSS3 flexbox : vertically center two different sized items, 但让它们的顶部对齐在相同的高度

javascript - 在刷新长 HTML 页面时防止滚动跳转

javascript - 为什么我的上下文菜单会在页面顶部添加空白区域?