検索フォームで空の検索が送信されないようにする必要があります。フォームには送信ボタンがないため、入力を防止する必要があります。
HTML コード:
フォーム1
<form method="get" class="search-form" id="searchform" action="http://example.com" >
<input class="text" name="s" id="s" type="text" />
</form>
フォーム2
<form action="http://example.com" class="search-form" method="get">
<input type="text" name="s" class="text">
</form>
Javascript コード
// Im sure this funcions returns the 2 different forms,
var searchForms = getElementsByClass('search-form');
for(i in searchForms)
{
if (searchForms[i].addEventListener)
{
searchForms[i].addEventListener("submit", function(e)
{
preventSubmit(e); // no problem here
console.log(i) // ALWAYS LOGS 1
});
} //I also implemented the ie code, but not necessary here, is the same as above for addEventListener
}
フォームを送信するたびに、コンソールに 1 と表示されます。