Templat XML yang diberikan kepada saya melalui latar belakang:
<Bayar>0,1,2</Pay>
<input type="checkbox" name="PayTypeList" class="PT1">1
<input type="checkbox" name="PayTypeList" class="PT2">2
<input type="checkbox" name="PayTypeList" class="PT3">3
<script>
($(".PT1").is(':checked')==true)?PT1="0":PT1="";
($(".PT2").is(':checked')==true)?PT2="1":PT2="";
($(".PT3").is(':checked')==true)?PT3="2":PT3="";
</script>
$("#textarea").html("<Pay>"+PT1+","+PT2+","+PT3+"</Pay>")
Saya menggunakan kaedah ini untuk menentukan dan kemudian menyambung, tetapi jika pilihan terakhir tidak dipilih, maka pilihan sebelumnya diikuti dengan koma, apa yang perlu saya lakukan
Isytiharkan tatasusunan Jika kotak pilihan dipilih, tolak nilai ke dalamnya dan akhirnya gunakan join untuk menukarnya menjadi tatasusunan yang dipisahkan koma.
Ungkapan biasa yang digunakan di tingkat atas hanya boleh mengalih keluar koma terakhir Jika ada yang tidak dipilih di hadapan, masih akan ada koma tambahan.
1. Saya faham keperluan anda: anda hanya perlu memaparkannya mengikut urutan, tanpa mengira susunan pemilihan. Sebagai contoh, sama ada anda memilih 2 atau 0 dahulu, paparan akan menjadi 0, 2;
Penyelesaian saya ialah menggunakan array untuk melintasi Terdapat banyak kaedah traversal:
Pilihan 1: Gunakan
reduce
(Saya baru belajar mengurangkan hari ini, mari bermain dengannya)Pilihan 2: Gunakan
filter + join
Pilihan 3: Gunakan
for循环
2 Jika anda mempertimbangkan pesanan klik, anda boleh menggunakan acara perubahan: apabila Kotak Semak berubah, hakim menyemak untuk menambah atau memadam data
.html:
javascript
(Belajar daripada
huguangju
kaedah mencipta tatasusunan kosong)Sebagai tatasusunan, alih keluar item nol dalam tatasusunan dan kemudian formatkannya menjadi rentetan