私はここでいくつかの答えを読みました。これまでにこの問題が発生したことがなく、理解できないようですが、.load()
ボタンを1回クリックするだけで関数が2回起動するのはなぜですか?
//proccess form
$('#special-offers-submit').click(function(e){
e.preventDefault();
console.log('Click');
send = true;
$('#other-industry').val($('#industry').val());
$('#popup-form input.input_field').each(function(){
if($(this).val().length < 2)
{
$(this).css('border-color','#cc0000');
$(this).siblings('label').css('color', '#cc0000');
$('#errorMessage').show();
send = false;
}
});
if(send)
{
data = $('#popup-form').serialize();
console.log(data);
$('#special-offers').load('http://www.avwebdesigns.com/ajax/popup-processor.php?'+data);
}
});
IDのボタンがあります。クリックすると、special-offers-submit
すべてのフィールドに入力されていることを確認し、.load()
関数を介してフォームを送信しようとします。これもメールを送信します。メールが2回届き、「クリック」も2回ログに記録されます。それが違いを生むなら、私がロードしているコンテナはファンシーボックスです。
助けてくれてありがとう。
ブライアン
コードをもっと見る必要がありますが、クリックイベントに複数回アタッチできますか?
これを試して:
$('#special-offers-submit').off('click').on('click', function(e){
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加