ホームページ >バックエンド開発 >PHPチュートリアル >新しい投稿の続き: $.ajax() 関数の戻り値の使用方法に関する詳細

新しい投稿の続き: $.ajax() 関数の戻り値の使用方法に関する詳細

WBOY
WBOYオリジナル
2016-06-23 14:18:09751ブラウズ


33 階の anyilaoliu からの返信を引用します:
以前は入力の境界線でしたが、今では入力があなたに置き換えられました

解決策は 2 つあります。1 つは、値を の値に直接挿入することです。入力

2 つ目は、それを今のように書きます。次に、td に境界線を追加して、以前のもののように見せます

あなたのために書かれた td.html(xxx) は、このように厳密に書く必要はありませんtd にコンテンツがある場合は、それに応じて変更されます
?????????????????????? ???????????????????????????????????????????
目の前には私の前の質問については、熱心な人 anyilaoliu が指導してくれました。その後、さらにいくつかの質問がありました: (気にしないでください、私は初心者です。そのような問題に対処しやすくするために、明確に質問したいと思っています)

1. 前に質問した中で、次のことが必要です。完了ページの左側はレコードのリストで、右側はレコードの各フィールドの詳細情報です(基本的にボックスの列の形式で存在します)。レコードを追加するための保存ボタンが下にあります。次に、選択したレコードを削除するボタンを追加します。私のアイデアは、左側のレコードをクリックすると、その内容が右側に表示されるというものです。この時点で、削除ボタンをクリックしてレコードを削除します。実装プロセス中に遭遇した問題は、選択したレコードの番号を記録する方法でした。私が使用した方法は、$.ajax() が ajax.php を指す場合にセッション メソッドを使用して番号を ajax.php ファイルに記録することでした。 . 、削除ボタンをクリックして別のファイルを開始し、セッションを読み取り、データベースを見つけて削除します。これは美しい考え方ですが、プログラムはセッションに値が割り当てられていないと考えているだけです。めまいがするので、以前は小さなものを作ろうとしたことがありますが、セッションはもう機能しません。何が起こっているのか分かりませんか?

2. $.ajax() で指定された ajax.php の場合、ファイルによって返された情報を d5fd7aea971a85678ba271703566ebfd の値に挿入します (例:
7850ddba75c30962cd7e65df4d0d61bc
これはどのように行うべきですか?

3. 前の投稿で述べたように、anyilaoliu は、「あなたのために書かれた td.html (xxx) は、このように厳密に書く必要はありません。あなたの td にコンテンツがあれば、それに応じて変更されます。」と述べました。実際、それは td だけが使用できるだけでなく、e388a4556c0f65e1904146cc1a846beedc6dce4a544fdca2df29d5ac0ea9906ba34de1251f0d9fe1e645927f19a896e8 のように使用できることを意味します。上記のタイプに対して class="指定された名前" をマークするだけで十分ですか?

4. また、$.ajax() 関数は $(".show_tr").text(..) の形式を使用して戻り情報を参照しますが、ajax に $.post() 関数もある場合, $("#show_6").text(..) と書かれているようですが、この 2 つの .show_6 と #show_6 を混在させることはできませんよね。どこでも $.post() を使用している別の友人を見かけました。これら 2 つの関数の長所と短所、およびどちらを使用するべきかを知りたいと思っています。

申し訳ありませんが、これは単なる研究投稿です。ご指導をお待ちしております。


ディスカッションへの返信 (解決策)

前にたくさん言いましたが、おそらく説明があまり明確ではないかもしれません。もしかしたら、他の投稿者ならもっとはっきりとわかるかもしれません... また、経験のある誰かが私が言ったことを指摘してくれることを願っています。間違っていて悪いです。以下も同様です

1. セッションを使用して削除することは聞いたことがないので、ajax を使用することにしました。これは、より慣れた方法と同じです。どれをクリックするとどれが表示され、どれをクリックすると削除されますか? 削除が成功すると、フロント デスクはこの値を ajax で受け取ります。成功するとページを更新するか、jsを操作して対応するdomノードを削除します

2. tdの挿入は $("td").html (挿入する値) と書くことができ、tdに入力を挿入するには次のように書くことができます$("td > input").val (挿入される値) として使用します。これは別のセレクターにすぎません。値を変更したい場所にさまざまなセレクターを配置します

3. それはまだ問題です。標準 HTML タグのセレクター (jquery のセレクターについての説明を続けます)、e388a4556c0f65e1904146cc1a846bee が $("p") で選択できます。この e388a4556c0f65e1904146cc1a846bee にクラスがあるかどうかを判断します。 ">94b3e26ee717c64999d7867364b1b4a3、$("p.abc") を使用して検索するか、$(".abc") を使用して検索できます。この p にも ID がある場合
たとえば、7c8e885a92d93cb98a58946c92e281fb94b3e26ee717c64999d7867364b1b4a3 $(".abc") を使用して検索することも、 $("# bcd") を使用して検索することもできます
つまり、通常のタグは、引用符、クラスはドットで追加され、ID は # で追加されます。これは CSS セレクター ルールと同じです $("p.abc") は、クラスが abc の p マークであることを意味します、$ (".abc ") は、クラス abc の任意のマークを表します

4. $.ajax() や $.post() などの jquery のメソッドであっても、ルールに従えば、さまざまな種類のセレクターを自由に使用できます。 $.ajax() と $.post() の違いはわかりません。唯一の違いは、$.ajax() が get と post のどちらかを選択できることです。を指定し、$.post() は post メソッドのみを使用できます。もちろん、指定する必要はありません

1. 何を言っているのかわかりません。質問の続きなので、元の投稿はどこにありますか?
2. あなたの元の投稿ではあなたのニーズが明確に説明されていませんでした。コード全体を辛抱強く説明してくれた anyilaoliu に感謝します
詳細を説明していないので、あなたの見解に不満を抱くのは普通のことです

3. 私は次のことを専門としています。 js この問題は JavaScript フォーラムで議論する必要があります。

これは、サーバーとクライアントのそれぞれのタスクを区別するのにも役立ちます

1. 何を言っているのかわかりませんか?質問の続きなので、元の投稿はどこにありますか?
2. あなたの元の投稿ではあなたのニーズが明確に説明されていませんでした。コード全体を辛抱強く説明してくれた anyilaoliu に感謝します
詳細を説明していないので、あなたの見解に不満を抱くのは普通のことです

3. 私は次のことを専門としています。 js この問題は JavaScript フォーラムで議論する必要があります。

これは、サーバーとクライアントのそれぞれのタスクを区別するのにも役立ちます

投稿後、その投稿がどこに行ったのかわかりません。
前の投稿で、anyilaoliu と私はそれについて話し合っていたため、新しい投稿に投稿した他の人は少し奇妙に感じるかもしれません。

1. 何のことを言っているのか分かりませんか?質問の続きなので、元の投稿はどこにありますか?
2. あなたの元の投稿ではあなたのニーズが明確に説明されていませんでした。コード全体を辛抱強く説明してくれた anyilaoliu に感謝します
詳細を説明していないので、あなたの見解に不満を抱くのは普通のことです

3. 私は次のことを専門としています。 js この問題は JavaScript フォーラムで議論する必要があります。

これは、サーバーとクライアントのそれぞれのタスクを区別するのにも役立ちます

はは、私のメッセージに返信したのはモデレーターであることが判明しました。
私は初心者なので、もっと質問する必要がありますが、それでも最終的にはキャセロールを割って質問する必要があります。そうしないと、混乱してまだ質問することができません。
セクション分けがこんなに明確だったんだ、とその時に気づきました。そういえば、知識には限界があり、主にPhpをやっているのですが、いつもjsの問題に遭遇するのが悲しいです。
投稿したからには、よく考えて次回から注意してみようと思います。
先輩方、ありがとうございました。

私はこれまで何度も言いましたが、説明があまり明確ではないかもしれません。もしかしたら、他の投稿者ならもっと明確に理解できるかもしれません。また、私の言ったことの間違いや悪い点を経験のある人が指摘してくれることを願っています。以下

1. 聞きませんでした 削除はセッションを使用して行われると言いましたが、私は ajax を使用することにしたので、どちらを表示するかをクリックするのと同じように、より慣れた方法になります。削除されたものをクリックすると、対応する一意のフィールド値が ajax に渡され、削除が成功すると、フロント デスクはこの値を ajax 成功で受け取り、ページを更新するか操作します。 jsで対応するdomノードを削除します

2. tdの挿入は$("td").html(挿入する値)と書くことができ、tdに入力を挿入するには$("td >"と書くことができます; input").val (挿入する値)、これはセレクターの違いにすぎません。さまざまなセレクターを使用して、変更したい場所を見つけます。 値の場所

3. 依然としてセレクターの問題です。 (jquery のセレクターについては引き続き説明します) 標準の HTML タグの場合、この e388a4556c0f65e1904146cc1a846bee に A クラスがある場合、3a8c862398a5fbd6d9b98547c02abe17 を使用できます。 9e2cc39c1cb573c244213146fdf9941894b3e26ee717c64999d7867364b1b4a3 $(".abc") または $("#bcd") を使用して配置できます
要するに、ラベルは引用符の中に直接記述されます。 $("p.abc") はクラスが abc の p マークであることを意味し、id には # を追加します。 abc

4. $.ajax()、$.post()、またはその他の jquery メソッドであっても、ルールに従って配置できる限り、さまざまなタイプのセレクターを自由に使用できます。 ajax() と $.post() の違いはわかりません。唯一の違いは、$.ajax() は get と post のどちらかを選択でき、それらを指定する必要があるのに対し、$.post() であるということです。 )は投稿方法のみを使用できます、もちろん指定する必要はありません

まず、いつもサポートしていただきありがとうございます。今日はもう少し面倒な問題があり、まとめ中です。明日、あなたのやり方で試してみて、アドバイスを求める前に結果とコードを投稿します。おそらくそれは意味のあることなので、ゆっくりしてくださいと言ってください。

改めてありがとうございます。

あまり丁寧になりすぎないようにしてください。わからないことがあれば、質問してください。私が初心者だったとき、何人かの熱心な専門家が私を助けてくれました。難しさ...

あまりにも丁寧すぎると不快に感じます...

解決してください


解決してください

anyilaoliu の指導の下、投稿の最後の 3 つの詳細は次のとおりです。満足に処理されました。 anyilaoliu のご支援に感謝します。何らかの理由で、当初予定していたレコードの削除機能 (投稿の最初の質問) を実装しなかったため、ここで結果を皆さんに議論していただくことはできません。

私は初心者なので、ここでのルールがわかりません。anyilaoliu とモデレーターと話し合ってみます。上記の 4 つの質問の範囲を超えた小さな質問がありますが、このスレッドで質問すべきではなく、新しいスレッドで開く必要がある場合は、お知らせください。すぐに閉じます。


主に、この質問は、anylaoliu が以前に熱心にデモンストレーションを行った質問に非常に近いので、もう少し詳しく質問したいのですが、可能ですか?
問題は実際には非常に単純で、非常に単純なページが上部と下部に分かれています。上部は選択タグ (いくつかのオプションから選択できるドロップダウン テーブル) です。ドロップダウン テーブルのオプションが選択されるたびに、このキーワードの値に基づいてデータベースが検索され、結果が表示されます。ページの下部に表示されます。

前回、anyilaoliu さんから頂いたデーモンコードを元に少し修正しようかと思ったのですが、やらずに二日ほど悩みました。

これは難しいので、アドバイスをお願いします。







あとは解決するだけです

anyilaoliu の指導の下、投稿の最後の 3 つの詳細は満足のいく処理が行われました。 anyilaoliu のご支援に感謝します。何らかの理由で、当初予定していたレコードの削除機能 (投稿の最初の質問) を実装しなかったため、ここで結果を皆さんに議論していただくことはできません。

私は初心者なので、ここでのルールがわかりません。anyilaoliu とモデレーターと話し合ってみます。上記の 4 つの質問の範囲を超えた小さな質問がありますが、このスレッドで質問すべきではなく、新しいスレッドで開く必要がある場合は、お知らせください。すぐに閉じます。

主に、この質問は、anylaoliu が以前に熱心にデモンストレーションを行った質問に非常に近いので、もう少し詳しく質問したいのですが、可能ですか?
問題は実際には非常に単純で、非常に単純なページが上部と下部に分かれています。上部は選択タグ (いくつかのオプションから選択できるドロップダウン テーブル) です。ドロップダウン テーブルのオプションが選択されるたびに、このキーワードの値に基づいてデータベースが検索され、結果が表示されます。ページの下部に表示されます。

前回、anylaoliu さんから頂いたデーモンコードを元に少し修正しようかと思ったのですが、やらずに二日ほど悩みました。

これは難しいので、アドバイスをお願いします。



質問がある場合は、モデレーターがどのフォーラムにアクセスすればよいかを通知します。あなたが今話している内容は、実装されている他の機能と何ら変わりません。以前の ajax で

を分割できます 以下の関数ポイントについて

1. ドロップダウン メニューで項目を選択するときに js 関数をトリガーし、対応するパラメーターを
に渡します 2. js 関数で ajax を使用して送信します受信パラメータをバックグラウンドクエリ結果に入力し、結果を返します
3. ajax によって返された結果が表示されます

どのリンクを解決できなかったのか分析してください

Anyilaoliu の指導の下、解決してください。投稿の最後の 3 つの詳細は満足のいく処理が行われました。 anyilaoliu のご支援に感謝します。何らかの理由で、当初予定していたレコードの削除機能 (投稿の最初の質問) を実装しなかったため、ここで結果を皆さんに議論していただくことはできません。

私は初心者なので、ここでのルールがわかりません。anyilaoliu とモデレーターと話し合ってみます。上記の 4 つの質問の範囲を超えた小さな質問がありますが、このスレッドで質問すべきではなく、新しいスレッドで開く必要がある場合は、お知らせください。すぐに閉じます。

主に、この質問は、anylaoliu が以前に熱心にデモンストレーションを行った質問に非常に近いので、もう少し詳しく質問したいのですが、可能ですか?
問題は実際には非常に単純で、非常に単純なページが上部と下部に分かれています。上部は選択タグ (いくつかのオプションから選択できるドロップダウン テーブル) です。ドロップダウン テーブルのオプションが選択されるたびに、このキーワードの値に基づいてデータベースが検索され、結果が表示されます。ページの下部に表示されます。

前回、anyilaoliu さんから頂いたデーモンコードを元に少し修正しようかと思ったのですが、やらずに二日ほど悩みました。

これは難しいので、アドバイスをお願いします。



質問がある場合は、モデレーターがどのフォーラムにアクセスすればよいかを通知します。あなたが今話している内容は、実装されている他の機能と何ら変わりません。以前の ajax で

を分割できます 以下の関数ポイントについて

1. ドロップダウン メニューで項目を選択するときに js 関数をトリガーし、対応するパラメーターを
に渡します 2. js 関数で ajax を使用して送信します受信パラメータをバックグラウンドクエリ結果に入力し、結果を返します
3. ajax によって返された結果が表示されます

どのリンクを取得できなかったのかを分析してください


これら 3 つの関数はうまく分かれています。ロジックは非常に明確なので、最後の 2 つの質問はそれほど問題にはなりません。それが最初の質問です。前のデーモンに基づいて、コードは次のとおりです:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script><script type="text/javascript">    $(document).ready(function(){        $(".LeftTruck").click(function(){            $(this).css("background","#A8A8A8");            $(this).siblings().css("background","white");            var n = $(this).text();            $.ajax({                type:"get",                url:"main/ajax.php",                data:{                    driverID:n                },                success:function(msg){                    msg = eval("("+msg+")");                     $(".show_2> input").val(msg.firstName);                            $(".show_3> input").val(msg.lastName);                    $(".show_4> input").val(msg.socialNum);                    $(".show_5> input").val(msg.mobile);                    $(".show_6> input").val(msg.email);                    var driverType = msg.type;                    if(driverType == 1)                    {                                $(".show_1 > input[name='type']:eq(0)").attr("checked","checked");                        $(".show_1 > input[name='type']:eq(1)").removeAttr("checked");                    }                    else                    {                                      $(".show_1 > input[name='type']:eq(1)").attr("checked","checked");                       $(".show_1 > input[name='type']:eq(0)").removeAttr("checked");                    }                                  }        });    });});    </script>


その中で、$(".LeftTruck").click(function() は、ここにはクリック アクションがないため、変更する必要がある可能性があります。これは選択ですか?
この文 $(this).siblings().css("background","white"); は絶対に必要ありません
次の $ .ajax({. . . . . 違いは大きくないと思います。必要に応じて変更できます。これで、ページと対応する HTML コードにもう少し柔軟性が与えられました。設定するには select+option を使用する必要があります。このオプションについて疑問はありますか?



その場合は、Gu Ge または Du Niang を使用して問題を解決してみてください

Baidu からダウンロードできます。最初の結果または最初の 2 日間がこの問題の解決に役立ちます

最初に試して、うまくいかなかったらコメントしてください

最初の 2 つの項目のタイプミスをお詫びします

その場合は、Gu Ge または Du Niang を使用して問題を解決してみてください

Baidu の「jquery select」にアクセスすると、最初の結果または 2 日前がこの問題の解決に役立ちます。

まずは試してみて、うまくいかなかったらコメントしてください。

はは、汗。

初心者でも安心、find を使って見つけました。
http://blog.csdn.net/Feiin/article/details/3896937
これについては上記に記載されています、よろしくお願いします。
結び目。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。