答えて
hereが表示されているように、serializeObject
はネイティブjQueryメソッドではないため、サイトの以前のプログラマが挿入した場合にのみ存在します。 Q&A found hereに記載されているように、この関数は、おそらく誰かがあなたのサイト上で作業するとき「searched a way to serialize a form
」発見し、以下の拡張子がわかった。
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
どこかにあなたのJSでserializeObject
を探しますが、メモして、それはおそらくとして必要ではないです
は
と同じことをしているようです。$.fn.serialize
さらなるレビューで、私はそれが全く同じではないことを発見しました。 serializeObject
メソッドは他にもありますQ & Aはフォームの値をObjectとしてシリアル化しますが、serialize
は値を送信用の文字列としてエンコードします。あなたはjQueryのコアにネイティブであるserailizeObject
のようなものをしたい場合
注意してください、、その後、serializeArray
を参照してください。
serializeArray
は、フォーム値のオブジェクトの配列を作成するという点で、結果が少し異なります。 { name: "", value: "" }
EXAMPLE
を持つ各オブジェクトの例ではDeveloper
Tools
Console
を参照してください。
'if(o [this.name])'の代わりに 'if(o.hasOwnProperty(this.name))'を使うべきです。同じ 'name'プロパティを持つグループの最初の入力が空の場合、2番目のバリアントは' false'になります。 –
@ MaximPechenin:あなたが質問と答えを読んでくれたら、私はその方法を書かなかったでしょう。私はそれが単に私がオンラインで見つけることができる最も一般的な形式であるので、単にそれを参照します。その点は、OPが干渉の原因となっている方法がどこにあるかを特定するのを助けることでした。 – SpYk3HH
$.serializeObject
は、フォーム要素を文字列にエンコードするのではなく、フォーム要素をアプリケーションで使用できる有効なJSON
オブジェクトに変換する既存の$.serialize
メソッドの変形です。
私はいくつかのJSONオブジェクトにフォームをシリアライズするにStackOverflowの上ここに掘り行っていると私はこの方法を見つけてしまった
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
まだそれは私が働いていたものに収まりません。だから自分のプラグインを作った。あなたはhttps://github.com/citnvillareal/serializeObject
これをチェックアウトするかもしれないもの、あなたの興味のある場合は、私は、これは簡単な方法だと思います!TODO--
$.fn.serializeObject = function() {
var o = {};
this.find("[name]").each(function() {
o[this.name] = this.value;
});
return o;
};
- 1. HTML5とjQueryの相違点
- 2. jquery-railsとjquery-ujsの相違点
- 3. jQueryコードの相違点
- 4. jQueryセレクタの相違点
- 5. MVCのJQueryとASP.NET AJAXの相違点
- 6. jQueryの.isと.filterの相違点
- 7. importとconstとの相違点とcommonjsでの相違点
- 8. =と:=の相違点
- 9. PHPUnitとPHPSpecの相違点と相違点
- 10. MSBuildとTFSBuildの相違点
- 11. string.hとstrings.hの相違点
- 12. NSArrayとNSMutableArrayの相違点
- 13. System.Web.CacheとHTTPContext.Curent.Cacheの相違点
- 14. saveとsave_model()の相違点
- 15. ディスパッチキューとNSOperationQueueの相違点
- 16. QtGui.QApplicationとQtCore.QCoreApplicationの相違点
- 17. CDO.MessageとSystem.Net.Mailの相違点
- 18. TransactionとTransactionScopeの相違点
- 19. addonGlobalLayoutListenerとaddOnPreDrawListenerの相違点
- 20. getGenericParameterTypesとgetParameterTypesの相違点
- 21. vmlinuxとvmlinux.oの相違点
- 22. KeyEventArgs.systemKeyとKeyEventArgs.Keyの相違点
- 23. Thread.sleep()とTimeUnit.SECONDS.sleep()の相違点
- 24. レポートとサブレポートの相違点
- 25. MPI_ScatterとMPI_Bcastの相違点
- 26. V8とECMAScriptの相違点
- 27. カーネルモードとドライバの相違点
- 28. アルゴリズムとメソッドの相違点
- 29. mysql_num_rowsとmysql_affected_rowsの相違点
- 30. modelAttributeとcommandNameの相違点
jQueryの中核で 'serializeObject'という名前のメソッドを持っていません。もしそれを見ているのであれば、おそらくプラグインにあり、おそらく 'serialize'と同じことをします。 – SpYk3HH
' serializeObject'はコアjquery関数ではありません。あなたはそのプラグインを手に入れましたが、いずれにせよ、それは比較の価値があるとは思わないでください。 –
さらに詳しい情報が見つかりました[*** here ***](http://stackoverflow.com/questions/8900587/jquery-serializeobject-is-not-a-function-only-in-firefox) – SpYk3HH