「選択」をクリックすると、ボックスがポップアップし、親と子を含む複数のオプションを選択できます。このオプションを選択すると、ID 番号が入力ボックスにすぐに表示されます。 「OK」をクリックすると、ボックスが非表示になります。各ボックスを入力ボックス内で個別に実行したいと考えています。これは私の HTML です:
[選択]をクリックすると、ボックスがポップアップ表示され、親と子を含む複数のオプションを選択できます。このオプションを選択すると、ID 番号が入力ボックスにすぐに表示されます。 「OK」をクリックすると、ボックスが非表示になります。各ボックスを入力ボックス内で個別に実行したいと考えています。これは私の HTML です:
。 ...选择三个... ..选择四个.. .. .
これは我的JS(子级和父级):
handleChildren = function() { var $checkbox = $(this); var $checkboxChildren = $checkbox.parent(); $checkboxChildren.each(function() { if ($checkbox.is(":checked")) { $(this).prop("チェック済み", "チェック済み"); } それ以外 { $(this).removeProp("チェック済み"); } }); }; handleParents = 関数(現在) { var $parent = $(current).closest(".children").closest("li").find(">input[type=checkbox]"); if ($parent.parent().find(".children input[type=checkbox]:checked").length > 0) { $parent.prop("チェック済み", "チェック済み"); } それ以外 { $parent.removeProp("チェック済み"); } ハンドル親($parent); } $("ul.father").find("input[type=checkbox]").each(function() { $(input).on("クリック", handleChildren); $(input).on("クリック", function() { ハンドル親(これ); }); });これは私のJS:
$(document).on('click', '.btn-ok', function(){ $('.box').hide() }); $(document).on('click', '.btn-select', function(){ $('.box').hide() $(this).next().show(); }); $(".checkbox").change(function() { var text = ""; $(".checkbox:checked").each(function() { text = $(this).val() ","; }); text = text.substring(0, text.length - 1); $(this).next().val(text); });现在管理台に警告が表示されました:
Uncaught InternalError: 再帰が多すぎます 最も近いファイル:///var/www/html/jquey.js:1
YourhandleParents自分自身を無条件に呼び出します。