我正在使用 Symfony 框架,并且有一个由 EasyAdmin 插件自动生成的表单。我需要此表单仅显示无线电输入字段,但无论出于何种原因,EasyAdmin 都会创建复选框,而我还没有找到更改它的方法。
我遇到的问题是,当用户选中其中一个复选框时,必须取消选中所有其他复选框。换句话说,模拟无线电输入。
以下是创建复选框的 HTML:
我的代码目前看起来像这样
$('#main').find('table .toggle input[type="checkbox"]').change(function() { $('#main').find('div .toggle .btn .btn-xs .btn-success').not($(this)).removeClass("on").removeClass("btn-success").addClass("btn-danger").addClass("off");
控制台中没有错误消息;任何帮助是极大的赞赏;过去两天这让我发疯:( });
下面是当前不起作用的表单和 JavaScript:
$('#main').find('table .toggle input[type="checkbox"]').change(function() { $('#main').find('div .toggle .btn .btn-xs .btn-success').not($(this)).removeClass("on").removeClass("btn-success").addClass("btn-danger").addClass("off"); });
Anda boleh mengaitkan meja dan kemudian menggunakannya untuk mencari kotak pilihan. Saya menggunakan yang pertama diperiksa untuk menetapkan keadaan awal, tetapi jika tidak, anda mungkin perlu menyesuaikannya.
Mungkin memerlukan perincian lebih sedikit, hanya untuk menjadikan penyelesaiannya lebih jelas.
Setiap komen menjadikannya sentiasa terbuka. Jika anda ingin menghidupkan/mematikan secara berprogram, anda boleh
'change'
事件更改为click
Anda boleh memanipulasi kelas kotak pilihan dalam pengendali acara perubahan. Ini bukan cara anda menanda/menyahtanda kotak pilihan.
Sila baca iniTandakan/nyahtanda kotak semak menggunakan jquery?dan inijQuery. Bagaimana untuk menyahtanda semua kotak pilihan kecuali satu (sudah ditanda)
Berikut adalah kaedah operasi khusus:
Berikut ialah contoh yang berfungsi:https://jsfiddle.net/fL9dknp7/