2012-05-02 8 views
0

こんにちは私はgoogle_button上でクリックしたときにすべてのものが正常に動作します.now「のOpenIDを」プラグインのjQueryの助けを借りて提出するフォームを持っているが、私はAOLの上でそれをクリックしたときダイアログを開き、フォームを送信します(form.submitとreturn falseがコメントアウトされている場合)。コメントを削除すると、aolのダイアログは開かれ、フォームは提出されず、Googleフォームも提出されません。jQueryのフォーム(jqueryのであれば、他のループの問題)

======================================

を私を助けてください。 ============================================

<form action="example.php" method="post" > 
<input type="image" src="images/google_button.png" id='https://www.google.com/accounts/o8/id' class="google"/> 
      <input type="image" src="images/AOL_button.png" id='http://openid.aol.com/' class='aol' /> 
</form> 

= ========================================== ===============================

<script type="text/javascript"> 
     $(document).ready(function(){ 
     $('form').openid(); 
     }) 
    </script> 

============ ========================================== ================

(function($){ 
    $.fn.openid = function() { 
    $('input').click(function(e){ 
     var provider = $(this).attr('class'); 
    if (provider == 'aol') { 
     $("#dialog").dialog(); 
     /*$('form').submit(function(){ 
      return false; 
    })*/ 
    } 
    else{ 
     var provider_url = $(this).attr('id'); //get id 
     var myinput = $('<input type="hidden" name="provider_url"/>').val(provider_url); 
     $('form').append(myinput); 
     $('form').submit(); 
    } 
    }) 
    } 
})(jQuery); 

============================================ ===================================

答えて

0

if else建設後、フォームを送信してください。

+0

私はこれを試してみましたが、それでもダイアログが開きますが、それは自動的に閉じて、フォームが(関数($){ $ .fn.openid =関数(){ $( '入力')を提出します。(機能をクリックしてください(E){ \t VARプロバイダ= $(この).ATTR( 'クラス');。 \t(プロバイダ== 'AOL'){ \t \t $( "#ダイアログ")であれば、ダイアログ(); \t \t \t \t else { \t var provider_url = $(this).attr( 'id'); // get id var myinput = $( '')val(provider_url); \t} \t \t $( 'form')。append(myinput); $( 'form')。submit(); }) } })(jQuery); – user1364146

0
(function($){ 
    $.fn.openid = function() { 
    $('input').click(function(e){ 
     var provider = $(this).attr('class'); 
    if (provider == 'aol') { 
     $("#dialog").dialog(); 
     /*$('form').submit(function(){ 
      return false; 
    })*/ 
    ***return false;*** //add return false in this section 
    } 
    else{ 
     var provider_url = $(this).attr('id'); //get id 
     var myinput = $('<input type="hidden" name="provider_url"/>').val(provider_url); 
     $('form').append(myinput); 
     $('form').submit(); 
    } 
    }) 
    } 
})(jQuery);