HTML表单提交未在Wordpress帖子中调用Javascript“onsubmit”处理程序[重复]
Posted
技术标签:
【中文标题】HTML表单提交未在Wordpress帖子中调用Javascript“onsubmit”处理程序[重复]【英文标题】:HTML form submit not calling Javascript "onsubmit" handler in Wordpress post [duplicate] 【发布时间】:2014-12-21 19:35:28 【问题描述】:我有一个基本的 html 表单,最后有一个提交按钮。问题是,我在表单标题中作为“onsubmit”处理程序提供的 javascript 函数没有被调用。
<form name="Details" method="post" onsubmit="validateForm()" id="Details_Form_ID">
这个处理函数在同一个文件中定义如下:
<script type="text/javascript">
function validateForm()
alert('I am an alert box!');
</script>
当我查看 Chrome 工具中的代码时,我注意到上面的 Javascript 代码本身包含在 <p>
元素下,而不是显示为“脚本”...下面的屏幕截图。我怀疑 Javascript 被视为纯文本,因此没有执行。
我该如何克服这个问题?我正在使用 wordpress 并编辑了一个“帖子”以包含此代码。
【问题讨论】:
在我的情况下,问题是表单提交后没有调用 Ajax 表单处理程序。相反,它会直接分支到表单中给出的“action”参数。基本问题是由于在 wordpress 中反复切换所见即所得和 HTML 编辑器,不知何故,ajax 表单提交处理程序通过插入 ![CDATA[.解决方案是在编辑 wordpress 帖子时禁用 WYSIWYG,并删除脚本前的 ![CDATA[ 关键字... 【参考方案1】:可能是它正在调用它,但页面会刷新尝试阻止默认操作,然后检查是否调用了警报?
onsubmit="validateForm(); return false;"
【讨论】:
感谢您的评论。我试过了,但 preventDefault() 也无济于事。我觉得问题出在其他地方。它甚至无法识别脚本本身,因此无法执行。【参考方案2】:在我的情况下,问题是表单提交后没有调用 Ajax 表单处理程序。相反,它会直接分支到表单中给出的“action”参数。基本问题是由于在 wordpress 中反复切换所见即所得和 HTML 编辑器,不知何故,ajax 表单提交处理程序通过插入 ![CDATA[.
解决方案是在编辑 wordpress 帖子时禁用所见即所得,并删除脚本前的 ![CDATA[ 关键字。..
【讨论】:
以上是关于HTML表单提交未在Wordpress帖子中调用Javascript“onsubmit”处理程序[重复]的主要内容,如果未能解决你的问题,请参考以下文章