我在表单提交事件处理程序中遇到问题。这是我使用 Jquery 1.4.2 的代码
<FORM id="mysearchform" method="get" action="http://www.abc.com/results.aspx?q=" target=_blank sizcache="1694" sizset="0" jQuery1347023310528="3">
<DIV class="search">
<span><span>
<LABEL class=hide for=q>Search:</LABEL>
<INPUT accessKey=S id="a" class="abc" name="a" maxLength="50" value="Images" size=69 type="search" autocomplete="off" selectionStart="0" jQuery1347023310528="108">
<INPUT style="WIDTH: 185px; HEIGHT: 33px" class="img" title="Search" alt="Search" value="Search" src="http://dummyimage.com/180x35" type=image>
<INPUT name="form" value="abcd" type="hidden"></SPAN></SPAN></DIV>
</FORM>
我有一个用于 mysearchform 的事件处理程序,用于更改表单输入元素的值和 id 为“a”的文本框的值,以便在提交表单时我可以更改文本框的值,即(添加附加值)
$("#mysearchform").submit(mysubmitHandler);
在 mysubmitHandler 中,我正在更改“a”和表单输入元素的值。此代码在 IE9、FF 4.0 和最新版本的 chrome 中运行良好。但是在 IE 7 和 IE8 中,在进入“mysubmitHandler”之前,新窗口正在打开(我在新窗口中显示搜索结果)。所以我的更改没有附加到搜索窗口上的查询字符串。
在其他浏览器中,“mysubmitHandler”首先触发,然后新窗口打开。