2012-04-22 14 views
0

私はcolorboxを使ってリンクからフォームを(別個のhtmlファイルで)開き、検証を実行してフォームをPHPスクリプトに送信します。これはすべて動作しています。jqueryはフォームを検証し、colorbox内で結果をcolorboxにします。

私が今したいことは、PHPスクリプトの結果がカラーボックスに表示されることです。サブミットスクリプトは次のとおりです。

$.post('processForm.php', $("#chngPass").serialize(), function(data) { 
    $('#FormContainer').html("<div id='message'></div>"); 
    $('#message').html("<h2>Thank you for request</h2>") 
     .fadeIn(1500, function() { 
      $('#message').append(data); 
     });   
}); 

ある時点で、メッセージが表示されましたが、メインページにはカラーボックスが表示されませんでした。今私は成功の上に何かを表示することはできません。

私は 'return false'を使用してページの更新を停止する必要があることを理解していますが、スクリプトのさまざまな部分でこれを試しています。

誰でも正しい方向に私を指揮できますか。これまでの入力のための ありがとう:

「formContainerは」意図はメッセージ

おかげ

アップデートでコンテンツを交換することで、フォームページでフォームを含むdiv要素です。まだ動作しないようにするには、validateとsubmitスクリプトを取得してください。

私は最新のものはこの1つである、フォームを送信するために、今のメソッドのカップルを使用しました:

submitHandler: function() { 
     var url = "../2010/includes/scripts/php/memberFunctions.php"; //the form processing url 
     $.ajax({ 
     type: "POST", 
     url: url, 
     data: $("#chngPass").serialize(), 
     success: function(data) 
     { 
     $("#chngPassWrapper").html(data); 
       } 
    }); 

    return false; // avoid the actual submit of the form. 

    } 

私は検証スクリプトなしでこれを試してみて、それが動作しますが、フォームが提出し、フォームがありますその後、カラーボックスで提出の結果に置き換えられます。

フォームが再び提出するが、フォームはページが、リフレッシュページの左上隅に表示され提出の結果をリフレッシュ提出停止しません検証スクリプトをバック置きます。 [リンク] http://jsfiddle.net/longestdrive/fJELU/

ありがとう:ここでは文脈で上記を置くための完全なスクリプトがありますどのように使用することができるページを、検証するポストを使用して提出を行い、さわやかからフォームを停止

あなたの助けのために

+0

$( '#message')を$( '#cboxContent')に変更すると思いますか? Colorboxで作成したcontentholderをターゲットにする必要があります:) –

+0

どのようにPOST ajaxコールをトリガーしますか?それが私が始める場所です。サブタイプのアクションを自動的にトリガーする要素の場合は、event.preventDefault呼び出しを追加することを検討してください。または、おそらくトリガー要素は、単純なリンクまたはスタイルのDOM要素にすることができます... –

答えて

0

ハ!それは

私はそれはそれ自身が、ルールのいずれかにあるように見えたとして検証スクリプトが動作していたと思った後、スクリプトを投げた間違っていた解決しよう(感謝放火犯!)

equaltoルールはequalToする必要があります

結果!

関連する問題