Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Konieczność wyboru co najmniej jednej opcji z select'a
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
spenalzo
Jak zrobić, żeby sprawdzać przy wysyłaniu formularza, że jeżeli jest zaznaczona jedna lub więcej opcji w select multiple to wysyłamy formularza jeżeli nie to alert?
FiDO
Kod
<script type="text/javascript"><!--



function check(obj)

{

  var selected = 0;



  for (i = 0; i < obj.options.length; i++)

    selected += (obj.options[i].selected)?1:0;

  if (selected > 0)

    return true;

  alert("Musisz zaznaczyć conajmniej dwie opcje!");

  return false;

}



//--></script>

</head>

<body>

<form method="post" name="f1" onsubmit="return check(this.sel);">

<select name="sel" size="5" multiple="multiple">

...
spenalzo
Działa ale połowicznie:
nazwa inputa musi być np. cat[] ponieważ jest to multiple a z taką nazwą już nie działa.
FiDO
onsubmit="return check(this['sel[]']);" i po problemie smile.gif

Swoja droga funkcje mozna uproscic, bo ja najpierw przeczytalem, ze maja byc conajmniej 2 zaznaczone i pod tym katem zrobilem. Jesli wystarczy jeden zaznaczony to:
Kod
function check(obj)

{

  var selected = 0;



  for (i = 0; i < obj.options.length; i++)

    if (obj.options[i].selected)

      return true;

  alert("Musisz zaznaczyć jakąś opcje!");

  return false;

}
spenalzo
Dzięki!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.