JavaScript melaksanakan input kotak berbilang pilihan
<p>Apabila saya mengklik pilih, kotak muncul dan kami boleh memilih berbilang pilihan, termasuk ibu bapa dan anak. Apabila pilihan dipilih, nombor ID akan dipaparkan dengan serta-merta dalam kotak input. Apabila kita klik OK, kotak itu akan disembunyikan. Saya mahu setiap kotak dilakukan secara individu dalam kotak input. Ini HTML saya: </p>
<pre class="brush:php;toolbar:false;"><p>Apabila saya mengklik pilih, kotak muncul dan kami boleh memilih berbilang pilihan, termasuk ibu bapa dan anak. Apabila pilihan dipilih, nombor ID akan dipaparkan dengan serta-merta dalam kotak input. Apabila kita klik OK, kotak itu akan disembunyikan. Saya mahu setiap kotak dilakukan secara individu dalam kotak input. Ini HTML saya: </p>
<pra><kod><button class="btn-select">Pilih satu...</button>
<div class="kotak"style="paparan:tiada">
<jenis input="kotak semak"kelas="kotak semak"nilai="1">kotak semak 1
<jenis input="kotak semak"kelas="kotak semak"nilai="2">Kotak semak 2
<jenis input="teks"kelas="input input-1"
<button class="btn-ok">OK</button>
</div>
<button class="btn-select">Pilih dua (ibu bapa/anak)...</button>
<div class="kotak"style="paparan:tiada">
<ul class="bapa">
<li>
<jenis input="kotak semak"kelas="kotak semak"nilai="1">Bahagian 1
<ul class="kanak-kanak">
<li><jenis input="kotak semak"kelas="kotak semak"nilai="5">Kotak semak 5</li>
</ul></li>
<li>
<jenis input="kotak semak"kelas="kotak semak"nilai="2">Bahagian 2
<ul class="kanak-kanak">
<li><jenis input="kotak semak"kelas="kotak semak"nilai="7">Kotak semak 7</li>
<li><jenis input="kotak semak"kelas="kotak semak"nilai="8">Kotak semak 8</li>
</ul></li></ul>
<jenis input="teks"kelas="input input-2"
<button class="btn-ok">OK</button>
</div>
.
...选择三个...
..选择四个..
..
.</pra>
<p>这是我的JS(子级和父级):</p>
<pre class="brush:php;toolbar:false;">handleChildren = function() {
var $kotak semak = $(ini);
var $checkboxChildren = $checkbox.parent();
$checkboxChildren.each(function() {
if ($checkbox.is(":checked")) {
$(this).prop("ditanda", "ditanda");
} lain {
$(this).removeProp("ditanda");
}
});
};
handleParents = fungsi(semasa) {
var $ibu bapa = $(semasa).paling dekat(".kanak-kanak").paling dekat("li").cari("> input[type=checkbox]");
if ($parent.parent().find(".children input[type=checkbox]:checked").panjang > 0) {
$parent.prop("ditanda", "ditanda");
} lain {
$parent.removeProp("ditanda");
}
handleParents($parent);
}
$("ul.father").cari("input[type=checkbox]").setiap(fungsi() {
$(input).on("klik", handleChildren);
$(input).on("klik", function() {
mengendalikanIbubapa(ini);
});
});</pre>
<p>这是我的JS:</p>
<pre class="brush:php;toolbar:false;">$(document).on('click', '.btn-ok', function(){
$('.box').hide()
});
$(document).on('klik', '.btn-select', function(){
$('.box').hide()
$(this).next().show();
});
$(".kotak semak").change(function() {
var text = "";
$(".kotak semak:ditanda").setiap(fungsi() {
teks += $(this).val() + ",";
});
text = text.substring(0, text.length - 1);
$(this).next().val(text);
});</pre>
<p>现在控制台显示了一个错误:</p>
<pre class="brush:php;toolbar:false;">Uncaught InternalError: terlalu banyak rekursi
fail terdekat:///var/www/html/jquey.js:1</pre></p>