Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JS] Konieczność wyboru co najmniej jednej opcji z select'a
spenalzo
post
Post #1





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


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?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
FiDO
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


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">

...
Go to the top of the page
+Quote Post
spenalzo
post
Post #3





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Działa ale połowicznie:
nazwa inputa musi być np. cat[] ponieważ jest to multiple a z taką nazwą już nie działa.
Go to the top of the page
+Quote Post
FiDO
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

Ostrzeżenie: (0%)
-----


onsubmit="return check(this['sel[]']);" i po problemie (IMG:http://forum.php.pl/style_emoticons/default/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;

}
Go to the top of the page
+Quote Post
spenalzo
post
Post #5





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Dzięki!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 17:21