2011-12-10 13 views
0

フォームとテーブルを同じページに配置するにはどのような方法がありますか?フォームにはデータをデータベースに保存する送信ボタン(ajaxsubmit)があり、テーブルはページを更新する必要なくデータを表示する必要がありますか?リフレッシュせずに同じページにajaxフォームと表を配置する最良の方法は何ですか?

私はテーブルを取得するために$ .LOADを呼び出そうとしていますが、いくつかの問題が原因document.ready

は、だから私はインラインフレームを使用しなければならない後$ .LOAD機能が終了する問題に発生しましたか?またはXMLファイルを作成し、データをテーブルに読み込みますか?

+1

どのような問題あなたは '$の.LOAD()'を持っていますか?今のところ、あなたの質問は非常に曖昧です。 –

+0

問題は、$ .load関数の前にdocument.readyが実行されているため、document.readyのコードがロードされたhtmlに適用されていないことです。 –

+0

@malkawiだから、 '.live'と' .delegate' '.on'が発明されました。 –

答えて

0

はjQueryのajaxFormとajaxSubmitのこの説明を見てみましょう:http://www.justwebdevelopment.com/blog/ajaxform-and-ajaxsubmit-options/

+0

すごく感謝しますが、フォームが送信された後にデータテーブルをロードするには、iframeを使用し、ajaxsubmitのコールバックでリロードしますか? –

+0

最初にAjaxを実行することの全ポイントは、iframeを使用する必要がないことです。あなたがajaxsubmitに提供するコールバックでは、戻ったデータでdomを更新します。 – GreyBeardedGeek

0

$.load()方法は、あなたがload()への呼び出しのcallbackに配置する必要が完了した後にコードを実行します。例えば

$("#myElement").load(
    '/location/of-target.html', 
    function(data) { 
     // put code here to execute after the load has completed. 
     // for example to append a specific div. 
     $(data).find("#myDiv").appendTo("#containerDiv"); 
    } 
); 

Further reading here

+0

しかし、私はコールバックとdocument.readyで同じ機能を実行することはできませんそうでなければ、クリックしたコードコードバインドは2回クリックすると正しく実行されますか? –

関連する問題