JavaScript は複数選択ボックス入力を実装します
<p>「選択」をクリックすると、ボックスがポップアップし、親と子を含む複数のオプションを選択できます。このオプションを選択すると、ID 番号が入力ボックスにすぐに表示されます。 「OK」をクリックすると、ボックスが非表示になります。各ボックスを入力ボックス内で個別に実行したいと考えています。これは私の HTML です: </p>
<pre class="brush:php;toolbar:false;"><p>[選択]をクリックすると、ボックスがポップアップ表示され、親と子を含む複数のオプションを選択できます。このオプションを選択すると、ID 番号が入力ボックスにすぐに表示されます。 「OK」をクリックすると、ボックスが非表示になります。各ボックスを入力ボックス内で個別に実行したいと考えています。これは私の HTML です: </p>
<pre><code><button class="btn-select">1 つ選択...</button>
<div class="box" style="display:none""
<入力タイプ="チェックボックス"クラス="チェックボックス"値="1">チェックボックス1
<input type="checkbox" class="checkbox" value="2">チェックボックス 2
<input type="text" class="input input-1" value="""
<button class="btn-ok">OK</button>
</div>
<button class="btn-select">2 つ (親/子) を選択...</button>
<div class="box" style="display:none""
<ul class="父親">
;
<input type="checkbox" class="checkbox" value="1">パート 1
<ul class="children">
<li><input type="checkbox" class="checkbox" value="5">チェックボックス 5</li>
</ul><
;
<input type="checkbox" class="checkbox" value="2">パート 2
<ul class="children">
<li><input type="checkbox" class="checkbox" value="7">チェックボックス 7</li>
<li><input type="checkbox" class="checkbox" value="8">チェックボックス 8</li>
</ul><
<input type="text" class="input input-2" value="""
<button class="btn-ok">OK</button>
</div>
。
...选择三个...
..选择四个..
..
.</pre>
<p>これは我的JS(子级和父级):</p>
<pre class="brush:php;toolbar:false;">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() {
ハンドル親(これ);
});
});</pre>
<p>これは私のJS:</p>
<pre class="brush:php;toolbar:false;">$(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);
});</pre>
<p>现在管理台に警告が表示されました:</p>
<pre class="brush:php;toolbar:false;">Uncaught InternalError: 再帰が多すぎます
最も近いファイル:///var/www/html/jquey.js:1</pre></p>