1

First I alert this, and alert 'undefined':

alert($("input[name='searchManagers']:checked").val());

But when I try this, why alert 'no':

if($("input[name='searchManagers']:checked").val() == 'undefined')
    alert('yes')
else
    alert('no')

That fix my problem:

if(typeof $("input[name='searchManagers']:checked").val() == 'undefined')
    alert('yes')
else
    alert('no')
Defense
  • 259
  • 4
  • 21

6 Answers6

3

The second one you are comparing to a string instead of the undefined type.

Try this:

if($("input[name='searchManagers']:checked").val() == undefined)

or:

if(typeof $("input[name='searchManagers']:checked").val() == 'undefined')
Brett Zamir
  • 14,034
  • 6
  • 54
  • 77
2

Use:

$("input[name='searchManagers']").is(":checked")
Mustafa Genç
  • 2,569
  • 19
  • 34
1

Because undefined != 'undefined' If you were to modify your code

  if($("input[name='searchManagers']:checked").val() == undefined)
    alert('yes')
  else
    alert('no')

Then it should work

DeadAlready
  • 2,988
  • 19
  • 18
1

change 'undefined' to undefined without quotes

if($("input[name='searchManagers']:checked").val() == undefined)
Om3ga
  • 30,465
  • 43
  • 141
  • 221
0

Please make sure set the id and name property in check box. And try below the code.

if(!$("input[name='searchManagers']:checked").val()){
    alert('Plase select the searchManagers');
    return false;
}
Prathap
  • 717
  • 2
  • 8
  • 25
0

Please make some changes and find the output.

  if ($("input[name='searchManagers']").is(':checked'))
  alert('yes');
  else
  alert('no');
Arun Manjhi
  • 175
  • 9