我在下拉菜单项中有一个表单。将鼠标悬停在父级上时会显示下拉菜单(使用Superfish插件)。我有一个 a 标记,它调用一个函数来通过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元素中的事实有关,该元素是隐藏的,并根据父级的鼠标悬停事件显示。
有没有人知道为什么会这样,也许有关如何修复的建议?谢谢!
答案 0 :(得分:0)
ocDlgDoSearch()
立即运行该功能。这不是jQuery。使用:
$('#frm-oc-dlg').submit(function onSubmit() {
yourFunctionCallHere();
});