jQuery if/else语句if条件包含或(||)两个变量

Bur*_*ler 0 html javascript jquery if-statement

我试图获取一些元素的值并将它们放在标签中的一个<select>列表中<option>:验证是否检查了无线电以及检查了哪个无线电采用了截面元素值并将它们插入分割<select><option>; 在我的例子中,我有两个部分/面板,可以通过无线电输入选择.我的问题是当我选择收音机时,因为我使用了类似的东西:

var scheduler = $( "#first-radio:checked" );
var cronos = $( "#second-radio:checked" );

$("#add-button").click( function() {
  if ( scheduler || cronos ) {
                              alert('None of radio options were selected!');
  } else{ 
         alert("else where my code must run"); 
  }
});
Run Code Online (Sandbox Code Playgroud)

如果在Add val按下按钮时选中了两个复选框之一,则通常应该采取其他警报,而是始终使用if语句并显示是否警告我不明白为什么:|

检查小提琴:

Aru*_*hny 5

jQuery方法将始终返回jQuery对象,该对象始终是真实的,因此您的代码将始终执行该if块.

此外,检查状态将在运行时更改,因此您无法使用在初始化DOM时获取的状态 - 您需要检查单击处理程序中单选按钮的当前状态.

var scheduler = $("#first-radio");
var cronos = $("#second-radio");

$("#add-button").click(function () {   
    if (scheduler.is(':checked') || cronos.is(':checked')) {
        alert("else where my code must run");
    } else {
        alert('None of radio options were selected!');
    }
});
Run Code Online (Sandbox Code Playgroud)

演示:小提琴