这些是复选框
<label><input type="checkbox" class="category" name="selector[]" value="114" id="category_id" >Mouse</label>
<label><input type="checkbox" value="89,809,watches" name="selector[]" class="category" id="category_id" >Watches</label>
<label><input type="checkbox" class="category" name="selector[]" value="809" id="category_id" >Men</label>
<label><input type="checkbox" class="category" name="selector[]" value="89" id="category_id" >Women</label>
这是我从复选框中取值的函数。
$('.category').click(function() {
var val = [];
jQuery(':checkbox:checked').each(function(i){
val[i] = jQuery(this).val();
});
});
如果有人选择男性(809)或女性(89)而没有点击观看(89,809,手表)那么我需要从数组val中删除相应的值
即某人选择men
然后选择val=array('809');
但如果某人选择没有看守的人,则val必须为null。如果某人选择了鼠标和男人,那么val必须是val = array(&#39; 114&#39;);
我尝试使用此代码进行检查但未使用
if((.inArray(val, 89))||(.inArray(val, 809)) && (!(.inArray(val, '89,809,watches')))){
alert('watch not selected ');
}
以及如何从数组中删除值?
答案 0 :(得分:0)
这个答案是有效的。但我不确定条件是否正确。
$('.category').click(function() {
var val = [];
jQuery(':checkbox:checked').each(function(i){
selected = jQuery(this).val();
if( (selected == '89' || selected == '809') && !( $.inArray('89,809,watches', val) != -1 ) )
return true;
else
val.push( selected );
}).get();
console.log(val);
$('#arrayVal').text( 'Array String: "' + val.toString() + '"' )
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label><input type="checkbox" class="category" name="selector[]" value="114" id="category_id" >Mouse</label>
<label><input type="checkbox" value="89,809,watches" name="selector[]" class="category" id="category_id" >Watches</label>
<label><input type="checkbox" class="category" name="selector[]" value="809" id="category_id" >Men</label>
<label><input type="checkbox" class="category" name="selector[]" value="89" id="category_id" >Women</label>
<div id="arrayVal"></div>
&#13;
答案 1 :(得分:0)
if(($.inArray(89, val)>-1)||($.inArray(809,val)>-1) && (($.inArray('89,809,watches', val)==-1))){
alert('watch not selected ');
}
很遗憾您知道要阅读哪个手册页,但是您没有阅读它......