-1

ランディング ページに 2 つのフォームがあります。1 つは見込み客を獲得するためのもの (最初のフォーム) で、もう 1 つはユーザーが入力したデータに基づいてライトボックスに Web ページを表示するためのフォーム (2 番目のフォーム) です。

ユーザーがリターンを押すと、両方のフォームが同時に送信されます。それは理想的ではありません。次の jQuery コードを使用して、送信する最も近いフォームを取得しています。このコードにより、ライトボックスを開くことができますが、両方のフォームが引き続き送信されるため、ライトボックスには何も入力されません。最終的に、ユーザーはライトボックスに表示されるはずの Web ページにリダイレクトされます。

<script>
$("second-form").closest("form").submit();
$("input[type=text]")
.keydown(function(e) { 
    if (e.keyCode == 13)
        $(this).closest("form").submit(); 
});
</script>

フォームの HTML コード:

 <form name="form" id="second-form" action="website" method="get" target="_self">    
 <input type="text" id="zipcode" placeholder="Zip Code" name="search" minlength="5" maxlength="5" size="12" pattern="\d{5}" title="A Zip Code should consist of five numbers" required />
 <input type="submit" value="Go" id="button" class="button">
 </form>
4

1 に答える 1