单选按钮 .val() 返回不为空的值,即使未选择任何单选按钮

Radiobutton .val() returns not null value even if none of radiobuttons is selected

本文关键字:单选按钮 任何 选择 val 返回      更新时间:2023-09-26

我有 3 组单选按钮,它们都正确命名。在submit()我想检查用户是否从每个组中选择了选项。

我这样做:

 $('.form').submit(function(){
      var selectedUser = $('input[name="selectedUser"]').val();
      var searchType = $('input[name="shareType"]').val();
      var selectedSearch = $('input[name="selectedSearch"]').val();
      console.log(selectedUser, searchType, selectedSearch);
      return false; //for testing purposes
    });

问题是,即使未选择任何单选按钮,三个变量中的每一个都返回不为 null 的值。

事实可能很重要:每个组都包含 1 个以上的单选按钮,每个单选按钮都有不同的值。

您需要测试是否选择了无线电,您可以使用:checked伪选择器执行此操作:

  var selectedUser = $('input[name="selectedUser"]:checked').val();
  var searchType = $('input[name="shareType"]:checked').val();
  var selectedSearch = $('input[name="selectedSearch"]:checked').val();
  if(selectedUser || searchType || selectedSearch) {
      // At least one selected
  }
  else {
      // None selected
      return false;
  }

这是一个演示的小提琴。