简体   繁体   English

根据标志条件切换大小写

[英]Switch case based on flag condition

I have 3 variables to store my 3 checkboxes status as follow: 我有3个变量来存储3个复选框的状态,如下所示:

var selectA =$('#checkbox-v-6a').is(':checked');
var selectB =$('#checkbox-v-6b').is(':checked');
var selectC =$('#checkbox-v-6c').is(':checked');

I want to send a variable to a python function based on the checkboxes status, such as if all checkboxes are checked, selection = "all"; 我想根据复选框状态将变量发送给python函数,例如是否选中了所有复选框,selection =“ all”; if only checkbox A and B is selected, selection="AB"; 如果仅选中复选框A和B,则selection =“ AB”; if only checkbox C is selected, selection="C". 如果仅选中复选框C,则选择=“ C”。 I know that var selectA , selectB and selectC will give me true and false but I'm not sure how to do a switch case for this? 我知道,VAR selectAselectBselectC会给我truefalse ,但我不知道该怎么办了这个开关的情况下?

Or do I use if-else ? 还是我使用if-else

HTML: HTML:

<fieldset data-role="controlgroup" data-mini="true">
                    <legend>Select Pill Types</legend>
                    <input name="checkbox-v-6a" id="checkbox-v-6a" type="checkbox" class="pillselect" value="a">
                    <label for="checkbox-v-6a">Multivitamins</label>
                    <input name="checkbox-v-6b" id="checkbox-v-6b" type="checkbox" class="pillselect" value="b">
                    <label for="checkbox-v-6b">Calcium</label>
                    <input name="checkbox-v-6c" id="checkbox-v-6c" type="checkbox" class="pillselect" value="c">
                    <label for="checkbox-v-6c">Omega-3</label>
                </fieldset>

Try to use $.each() like, 尝试像这样使用$ .each()

var selection=[];
$(':checkbox:checked').each(function(){
   selection.push(this.id);
});
alert('Checked id: '+selection.join(', '));

Demo 演示版

If you want to set values in array then try this, 如果要在array设置values ,请尝试此操作,

var selection=[];
$(':checkbox:checked').each(function(){
   selection.push(this.value);
});
alert('Checked id: '+selection.join(', '));

Update value demo 更新值演示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM