2012-01-05 13 views
2

私はIEで提出しない提出フォームに取り組んでいます。 IEの嫌いなことが明らかになっているのかどうか疑問に思っていたのですが、フォームはIEで送信されません

$(function(){ 
     {% if show_existing_form == False %} 
    $('#publisher-signup').toggle(); 
    $('#existing-user-pub-signup').toggle(); 
     {% endif %} 

     $('#new-user').click(function() { 
    $('#publisher-signup').toggle(); 
    $('#existing-user-pub-signup').toggle(); 
     }); 

     $('#existing-user').click(function() { 
    $('#publisher-signup').toggle(); 
    $('#existing-user-pub-signup').toggle(); 
     }); 

     var disable_submit = function() { 
    if ($('#publisher-submit').attr('disabled') !== 'disabled') { 
     $('#publisher-submit').attr('disabled', 'disabled'); 
    } 
     }; 

     var enable_submit = function() { 
    if ($('#publisher-submit').attr('disabled') === 'disabled') { 
     $('#publisher-submit').removeAttr('disabled'); 
    } 
     }; 

     var check_passwords_match = function() { 
    if ($('#password').val().trim() === '' || $('#confirm-password').val().trim() === '') { 
     disable_submit(); 
    } else if ($('#password').val() !== $('#confirm-password').val()) { 
     $('#password-mismatch').show(); 
     disable_submit(); 
    } else { 
     $('#password-mismatch').hide(); 
     enable_submit(); 
    } 
     }; 

     $('#confirm-password').change(check_passwords_match); 
     $('#password').change(check_passwords_match); 

     $('#email').change(function() { 
     $.ajax({ 
      'url': '/preview', 
      'type': 'POST', 
      'data': { 
        'check-username': true, 
        'email': $('#email').val() 
       }, 
      'success': function(data, textStatus, jqXHR) { 
         if (data.exists === true) { 
          $('#user-exists').removeClass('hide'); 
         } else { 
          $('#user-exists').addClass('hide'); 
         } 
        } 
     }); 
     }); 

     $('#existing-submit-btn').click(function(){ 
     $('#publisher-existing-signup').submit(); 
     }); 

     $('#publisher-submit-btn').click(function(){ 
    $('#publisher-purchase').submit(); 
     }); 
}); 
+0

すべてのブラウザには、奇妙なフォーム提出の癖があります。あなたのフォームが 'input type =" submit "を持っているかどうかを確認し、そうでなければ追加してください。それが問題を解決すれば、あなたは出発点があります。 – Milimetric

+0

コンソールにJavaScriptエラーがありますか? – JJJ

+0

もhtmlを投稿する価値がありますか? – matpol

答えて

1

問題は、1つまたはこれらの両方で可能性があります:1つのフォームの送信ボタンが別のフォームを提出するために使用されているように見えます

$('#existing-submit-btn').click(function(){ 
    $('#publisher-existing-signup').submit(); 
}); 

$('#publisher-submit-btn').click(function(){ 
    $('#publisher-purchase').submit(); 
}); 

が、デフォルトのアクション最初にキャンセルされることはありません。それを次のように変更してみてください:

$('#existing-submit-btn').click(function(){ 
    $('#publisher-existing-signup').submit(); 

    return false; 
}); 

$('#publisher-submit-btn').click(function(){ 
    $('#publisher-purchase').submit(); 

    return false; 
}); 
関連する問題