ホームページ >ウェブフロントエンド >jsチュートリアル >form_jquery を送信するための jquery の $.ajax メソッドの詳細な説明

form_jquery を送信するための jquery の $.ajax メソッドの詳細な説明

WBOY
WBOYオリジナル
2016-05-16 16:32:121289ブラウズ

コードをコピーします コードは次のとおりです:

関数postdata(){ $.ajax({ Type: "Post", // データを送信するための ajax メソッドの形式を設定します
"ok.php"、 。 data: "writer=" $("#writer").val(), //入力ボックスの値 Writer が送信されたデータとして使用されます
Success: function(msg){ //送信が成功した後のコールバック。msg 変数は ok.php によって出力されたコンテンツです。
alert("データは正常に送信されました"); //必要に応じて、msg 変数の値を DIV 要素に表示できます
                                                                            });
}



jquery マニュアルの説明:
データ サーバーに送信されるデータ。リクエスト文字列形式に自動的に変換されます。 GET リクエストの URL に追加されます。この自動変換を無効にするには、processData オプションの説明を参照してください。キー/値形式である必要があります。配列の場合、jQuery は異なる値に同じ名前を自動的に割り当てます。たとえば、{foo:["bar1", "bar2"]} は '&foo=bar1&foo=bar2' に変換されます。
例:



コードをコピーします

コードは次のとおりです: $.ajax({ 入力: 「POST」、
URL: "some.php"、
データ: "名前=ジョン&場所=ボストン"、
成功: function(msg){
alert( "保存されたデータ: " msg ); }
});



ここでのデータに続くパラメータは 2 つの形式で記述できます。1 つは通常の URL パラメータと同じ方法で記述され、もう 1 つは json 配列で記述されます。
上記の例のデータ部分は、data: {name: "John", location: "Boston"} のように記述することもできます。これら 2 つの用法の違いは何ですか?
今日、開発中に 2 つの使用法の微妙な違いを発見しました。 1 つ目の方法は、URL を使用してパラメーターを渡す方法です。記号「&」がパラメーターに追加されている場合、パラメーターが受け取られないか、「data: "name=John&location=Boston",」のように不完全になる可能性があります。 🎜> name の値が "john&smith" の場合、JS の encodeURIComponent() メソッドを使用してエスケープできます。


ただし、{name:"John",location:"Boston"} のように記述する場合は、エスケープする必要はありません。エスケープすると、エスケープされた文字列が返されます。

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