2011-09-12 1 views
0

jqueryを理解しようとしています。少し遅いです、多分私はCOBOLのバックグラウンドから来るかもしれません。.load()を使ってダイアルにロードされたphp/htmlフォームを提出する方法

私は読んでいるのではなく、わかります。 php、jqueryは私のためだけの趣味です

私はこれらの更新フォームページを持っていました。私はそれらをダイアログに入れてみたかったのです。

Iフレームでダイアログを使用しようとしましたが、好きではありませんでした。iframeのロードが非常に遅く、読み込み中のページのjqueryタブが含まれていました。その他いくつかの問題。

だから、私はiframeから離れようとしています。私はページを取り除き、肉体(私のPHP/HTMLファイルのボディ)を残して(ボディタグを除いて)、今度は私のフォームの短いバージョンをダイアログに読み込み、美しく読み込んで見栄えがいいです。

私は少し失われていますどこだから私はデータのための私を提出したい次、これは....

私はアヤックスを使用する必要がguestingが、私はOK /失敗メッセージでアヤックスから戻るにしています再び失われる。

私の送信ボタンはjqueryダイアログボタンではありませんでしたか?

私はボタンを使用する必要があります。

{ 
    "Save" : function() { 
      ..... 
    "Close" : function() { 
      $(this).dialog("close"); 
      ..... 
}  

これらは醜いと私はあまりそれらを配置する場所のコントロールとどのように見ています。

答えて

0

あなたがする必要があるのは、ダイアログボックスにフォームがあることを確認することだけです。 、フォームにリスナーを追加します。

$("#myForm").die().live('submit',function(e) { 
    e.preventDefault(); 
    $.ajax({ 
     type : POST, 
     url : localhost:8080/myUrl, 
     dataType : 'json', 
     cache: false, 
     contentType: "application/x-www-form-urlencoded; charset=UTF-8", 
     data : $("#myForm").serialize(), 
     success : function(){ //do what you want here, like displaying validation errors...}, 
     error:function (xhr, ajaxOptions, thrownError){ //manage ajax errors} 
    }); 

    return false; 
}); 

だからあなたの[保存]ボタンを単なる入力タイプは=

は楽しみを持って「提出」されています。あなたは、あなたがリスナーを追加します

<form id="myForm"> 
    <input id="myInput" name="myName" type="text" /> 
</form> 

を持っているとしましょう!

関連する問題