皆さん、ご回答ありがとうございます。
madalin ivascuのコメントに基づいて解決策を実装しようとしました。同じことをするjsfiddleも見つかりました。いくつかの変更/変更により、必要なものが得られました。
ステップ 1:カスタム プラグインを作成します。
(function($) {
$.fn.deserialize = function (serializedString) {
var form = jQuery(this);
form[0].reset();
serializedString = serializedString.replace(/\+/g, "%20");
var formFieldArray = serializedString.split("&");
jQuery.each(formFieldArray, function(i, pair) {
var nameValue = pair.split("=");
var name = decodeURIComponent(nameValue[0]);
var value = decodeURIComponent(nameValue[1]);
var field = form.find("[name='" + name + "']");
if (field[0] != undefined) {
if (field[0].type == "radio" || field[0].type == "checkbox") {
var fieldWithValue = field.filter('[value="' + value + '"]');
var isFound = (fieldWithValue.length > 0);
if (!isFound && value == "on") {
field.first().prop("checked", true);
} else {
fieldWithValue.prop("checked", isFound);
}
} else {
field.val(value);
}
}
});
}
}(jQuery));
ステップ 2:シリアル化されたフォーム データをどこかに保存します。
フォームを最後に保存したステージにリセットする必要がある場合は、これを使用します。
yourForm.deserialize(serializedFormData);