0

我在下拉菜单项中有一个表单。将鼠标悬停在父级上时会显示下拉菜单(使用 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;">&nbsp;</a>

处理 onclick 事件的 JavaScript 代码如下所示:

function ocDlgDoSearch() {
if ($('#oc-dlg-query-field').val() != '') {
    $('#frm-oc-dlg').submit();
}}

这在 Chrome、Firefix、Safari 和 IE 9 中运行良好。但是,在 IE7 和 IE8 中,表单提交但文本字段的值不会一起发送(通过 POST)。我认为这与表单位于基于父级的鼠标悬停事件隐藏和显示的 DOM 元素中的事实有关。

有谁知道为什么会发生这种情况,也许有关于如何解决的建议?谢谢!

4

1 回答 1

0

ocDlgDoSearch()立即运行该功能。这不是 jQuery。利用:

$('#frm-oc-dlg').submit(function onSubmit() {
    yourFunctionCallHere();
});
于 2013-08-07T13:35:29.760 回答