0

私は現在、ajaxを使用して外部ページに情報を投稿し、jqueryを使用して、投稿された情報の処理に基づいてページ上の特定の要素を更新する方法を学習しています。私はこれを開始するためにbootstrap-ajaxプラグインを使用しており、すべてが期待どおりに機能しています。ただし、サーバー側のhtmlを作成するには、使用している方法よりも優れた方法または方法が必要だと思います。

これがajaxプラグインの仕組みです。

  1. 最初のphpページから始めて、ajaxプラグインによって処理されるフォームと、フォームからのデータが投稿された後に置換または更新するdivを定義します。

  2. プラグインは、ajaxを使用してデータを指定されたページに送信し、指定されたページは{'divToReplace'=>'renderedHTMLusedForReplacement'}で構成されるjsonエンコードされた変数で応答します

私の現在のワークフローは、更新されるdivの初期phpコードを作成することで構成されています。これは通常、次のようになります。

<div id="<?php echo $itemID; ?>" class="<?php echo $thisDivClass; ?>">
   <div class="span5">
       <h4><?php echo $innerTitle;?></h4>
           .......
           ..........

次に、そのdivのコードをコピーして変更し、phpを処理する追加の関数を作成して、htmlを次のような変数に保存する必要があります。

$divHtml='<div id="'.$itemID.'" class="'.$thisDivClass.'">
             <div class="span5">
                 <h4>'.$innerTitle.'</h4>';

言うまでもなく、これは非常に大量のコードで行う必要があり、セット全体をコピーして変更することなく、元のコードをレンダリングしてhtmlを変数に保存するためのより良い方法があるはずです。コードの。私はajax、jquery、jsonにかなり慣れていません。また、phpの初心者グレードをわずかに上回っているため、このプロセスが完全に間違っているか、非常に基本的なものが欠落している可能性があります。

ヘルプ、アドバイス、または提案をいただければ幸いです。ありがとう!

4

1 に答える 1

0

ドキュメントに基づいて、プラグインでは div 全体ではなく HTML フラグメントを指定できるようです。また、投稿したスニペットが実際に行っていることを表している場合、div の構造は変更されていないように見えますが、コンテンツは変更されています。

したがって、少なくとも投稿した内容に基づいて、変更したい div の部分とそこに移動したい新しいコンテンツのセレクターを含むいくつかのキーと値のペアをプラグインに渡すことができる可能性があります。これにより、少なくとも div 全体を再作成する必要がなくなります。

私の経験では、AJAX と jQuery を使い始めたばかりで、基本にまだ慣れていない場合、このようなプラグインを使用すると、より混乱し、より多くの作業が必要になることがあります。$.ajax()単純な jQueryリクエストを使用して目的を達成することは、実際にはより簡単で時間のかからない (そしてあなたにとってより有益である) ことになる可能性があります。少なくとも、誰かのプラグインの使い方を学ぼうとするのではなく、ほぼすべてのプロジェクトに適用される基本を学ぶことに時間を費やすことになります。ただし、いつものように、マイレージは異なる場合があります。

于 2013-03-01T12:51:25.857 に答える