Apabila menggunakan jQuery untuk melaksanakan operasi DOM, anda selalunya perlu memintas beberapa rentetan untuk pemprosesan Anda mungkin menghadapi satu siri nilai yang dipisahkan dengan koma dan perlu memintasnya untuk diproses. Jadi bagaimana untuk menggunakan jQuery untuk memintas rentetan dengan koma? Artikel ini akan membawa anda melalui isu ini dan memberikan contoh kod praktikal.
Rentetan dipisahkan koma sering muncul dalam bentuk atau atribut label, contohnya:
<input type="checkbox" name="hobby" value="reading,swimming,hiking">
Apabila melakukan pemprosesan data, selalunya rentetan nilai perlu dipisahkan dengan koma untuk mendapatkan nilai masing-masing Berikut ialah contoh pseudokod:
var hobbyValues = $('input[name="hobby"]').val().split(','); for (var i = 0; i < hobbyValues.length; i++) { // 进行处理 }
pseudokod di atas menyedari pemisahan rentetan yang dipisahkan koma dan memisahkan operasi yang dipisahkan untuk melakukan pemprosesan pada. setiap nilai. Seterusnya, kami akan menerangkan secara terperinci cara menggunakan jQuery untuk memintas rentetan dengan koma.
Fungsi split() boleh membelah rentetan mengikut pembatas yang ditentukan dan mengembalikan tatasusunan yang terdiri daripada rentetan split. Oleh itu, kita boleh menggunakan fungsi split() untuk memisahkan rentetan dengan koma.
Berikut ialah contoh kod:
var str = 'reading,swimming,hiking'; var arr = str.split(','); console.log(arr); // 输出 ['reading', 'swimming', 'hiking']
Dalam kod di atas, kami akan memisahkan rentetan dipisahkan koma reading,swimming,hiking
menggunakan fungsi split()
dan menyimpan hasil pecahan Dalam tatasusunanarr
. Akhir sekali, kami mengeluarkan tatasusunan dan anda boleh melihat bahawa hasil yang dipisahkan ialah ['reading', 'swimming', 'hiking']
.
Berdasarkan keperluan kami di atas, kami boleh mengubah suai kod supaya ia berfungsi untuk nilai dipisahkan koma dalam borang. Kodnya adalah seperti berikut:
var hobbyValues = $('input[name="hobby"]').val().split(','); for (var i = 0; i < hobbyValues.length; i++) { // 进行处理 }
Dalam kod di atas, kami telah menggunakan $('input[name="hobby"]').val()
untuk mendapatkan nilai semua kotak pilihan dan memisahkannya dengan koma. Kemudian, gunakan fungsi split()
untuk memisahkan rentetan kepada tatasusunan hobbyValues
, ulangi dan proseskannya.
Dalam kod contoh di atas, kami menganggap bahawa semua nilai adalah sah, jadi kami melintasi terus. Walau bagaimanapun, dalam operasi sebenar, beberapa situasi yang tidak dijangka mungkin berlaku, seperti berbilang koma berturut-turut muncul dalam rentetan, menyebabkan nilai yang dipisahkan oleh rentetan mengandungi rentetan kosong. Pada masa ini, kita perlu memberi perhatian khusus untuk mengalih keluar rentetan kosong ini untuk mengelakkan pengecualian.
Untuk menyelesaikan masalah ini, kita boleh menggunakan fungsi replace()
untuk menggantikan koma berturut-turut dengan satu koma dan lulus ungkapan biasa split()
dalam fungsi /[,s]+/
untuk menapis rentetan kosong. Kod yang diubah suai adalah seperti berikut:
var str = 'reading,swimming,,hiking'; var arr = str.replace(/,+/g, ',').split(/[,s]+/); console.log(arr); // 输出 ['reading', 'swimming', 'hiking']
Dalam kod di atas, kami menambah berbilang koma berturut-turut dalam rentetan str
dan menggunakan ungkapan biasa /[,s]+/
sebagai pembatas untuk pemisahan rentetan. Di sini /[,s]+/
bermaksud sebarang bilangan koma atau ruang. Adalah penting untuk ambil perhatian bahawa simbol +
dalam ungkapan biasa bermaksud memadankan sekurang-kurangnya satu simbol, supaya rentetan kosong dapat dielakkan.
Artikel ini memperkenalkan secara ringkas keperluan untuk memintas rentetan dengan koma dan menyediakan kod sampel untuk pemisahan rentetan menggunakan fungsi split(). Pada masa yang sama, ia juga menerangkan bagaimana untuk mengelakkan berlakunya rentetan kosong.
Jika anda perlu memproses data pada rentetan dipisahkan koma dalam borang, anda boleh merujuk kepada kod sampel di atas dan memberi perhatian kepada langkah berjaga-jaga yang dinyatakan dalam kod untuk mengelakkan pengecualian yang tidak dijangka.
Atas ialah kandungan terperinci Bagaimana untuk memintas rentetan dengan koma dalam jquery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!