フォームにいくつかのチェックボックスがあります。チェックすると、非表示フィールドがフォームに追加されます。
最初はいくつかのチェックボックスがオンになっていますが、HTML を変更して関連する隠しフィールドを含めたくありません。代わりに、ページが最初に読み込まれたときに、同じコードをトリガーして隠しフィールドを自動的に追加できるようにしたいと考えています。
私はこのようなことを試しましたが、運がありません:
container.find("input[data-subscribe]").on("change load", function()
// ------------------------------------------------^^^^ Thought adding load here
// might do what I want.
{
var lists = $(this).data("subscribe").toString();
lists = lists.split(";");
for(var i = 0; i < lists.length; i++)
{
var list = lists[i];
if($(this).is(":checked")) container.prepend('<input type="hidden" name="lists" value="' + list + '">');
else container.find("input[type=hidden][value=" + list + "]").remove();
}
});
もちろん、コードをコピーして$(document).ready()
ハンドラーに入れることもできますが、上記on
に追加できるイベントがあれば、はるかにクリーンになります。