我在下拉菜单项中有一个表单。将鼠标悬停在父级上时会显示下拉菜单(使用 Superfish 插件)。我有一个标签,它调用一个函数来通过 JQuery 提交表单。HTML 如下所示:
<form method="post" action="/our-care/" id="frm-oc-dlg">
<input class="oc-search-txt-field" id="oc-dlg-query-field" name="query" type="text">
</form>
<a class="oc-search-btn-info-action" href="#" onclick="ocDlgDoSearch(); return false;"> </a>
处理 onclick 事件的 JavaScript 代码如下所示:
function ocDlgDoSearch() {
if ($('#oc-dlg-query-field').val() != '') {
$('#frm-oc-dlg').submit();
}}
这在 Chrome、Firefix、Safari 和 IE 9 中运行良好。但是,在 IE7 和 IE8 中,表单提交但文本字段的值不会一起发送(通过 POST)。我认为这与表单位于基于父级的鼠标悬停事件隐藏和显示的 DOM 元素中的事实有关。
有谁知道为什么会发生这种情况,也许有关于如何解决的建议?谢谢!