Javascript et liste déroulante
Résolu
Alex
-
Alex -
Alex -
Bonjour,
Je souhaite vérifier en javascript que au moins un élement de ma liste deroulante multiple ait été sélectionné... Mais je ne m'en sors pas !!!
Voici mon code pr la vérification :
function select_selected(form){
for (i=0, n=form.elements.length; i<n; i++){
if ((form.elements[i].selected == true))
return true }
return false;
}
Et voici mon code sur ma page web
<form method="post" action="" name="supr_club">
Clubs à supprimer :
<select name="club_supr[]" multiple="true" size="8">
<?php
$select = "select * from clubs order by nom";
$result = mysql_query($select);
while($data = mysql_fetch_array($result)){
echo '<option value="'.$data['id'].'">'.$data['nom'].'</option>';
}
?>
</select>
<input type="hidden" name="champ" value="<?php echo $champ; ?>">
<input type="hidden" name="asupr" value="asupr">
<input type="button" value="Supprimer" onclick="javascript:select_selected(this.form);">
</form>
Je sature.....Merci de votre aide ;)
Je souhaite vérifier en javascript que au moins un élement de ma liste deroulante multiple ait été sélectionné... Mais je ne m'en sors pas !!!
Voici mon code pr la vérification :
function select_selected(form){
for (i=0, n=form.elements.length; i<n; i++){
if ((form.elements[i].selected == true))
return true }
return false;
}
Et voici mon code sur ma page web
<form method="post" action="" name="supr_club">
Clubs à supprimer :
<select name="club_supr[]" multiple="true" size="8">
<?php
$select = "select * from clubs order by nom";
$result = mysql_query($select);
while($data = mysql_fetch_array($result)){
echo '<option value="'.$data['id'].'">'.$data['nom'].'</option>';
}
?>
</select>
<input type="hidden" name="champ" value="<?php echo $champ; ?>">
<input type="hidden" name="asupr" value="asupr">
<input type="button" value="Supprimer" onclick="javascript:select_selected(this.form);">
</form>
Je sature.....Merci de votre aide ;)
A voir également:
- Javascript et liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste code ascii - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Site dangereux liste - Guide
3 réponses
ou sinon vu que tu verifie au click, tu peux aussi juste faire:
function select_selected(form){
var select = document.getElementById("club_supr");
verif=false;
for (i=0; i<select.length; i++)
{
if (select.options[i].selected == true)
verif =true;
}
return verif;
}
et juste changer:
<select name="club_supr[]" multiple="multiple" size="8">
en
<select id="club_supr" name="club_supr[]" multiple="true" size="8">
cordialement, dreamfeeder.
function select_selected(form){
var select = document.getElementById("club_supr");
verif=false;
for (i=0; i<select.length; i++)
{
if (select.options[i].selected == true)
verif =true;
}
return verif;
}
et juste changer:
<select name="club_supr[]" multiple="multiple" size="8">
en
<select id="club_supr" name="club_supr[]" multiple="true" size="8">
cordialement, dreamfeeder.
voici ce qui pourrait faire l'affaire:
function makeXHR(){
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("Your browser does not support AJAX!");
return false;
}
}
}
return xmlHttp;
}
function select_selected(form){
var select = form.getElementsByTagName("select")[0];
var au_moins_un = false;
for (i = 0; i<select.length; i++){
if (select.options[i].selected){
au_moins_un = true;
// ici on peut mettre le code Ajax pour supprimer le club select.options[i].value
/*
var xhr = makeXHR();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
if (xhr.status == 200){
// action à faire lorsque la suppression s'est bien passée.
}
}
}
xhr.open("POST","ajax/remove_club.php", true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhr.send("remove_club="+select.options[i].value);
*/
}
}
return au_moins_un;
}
<form method="post" action="" name="supr_club">
Clubs à supprimer :
<select name="club_supr[]" multiple="multiple" size="8">
<?php
$select = "SELECT * FROM clubs ORDER BY nom;";
$result = mysql_query($select);
while($data = mysql_fetch_array($result)){
echo '<option value="'.$data['id'].'">'.$data['nom'].'</option>';
}
?>
</select>
<input type="hidden" name="champ" <?php echo "value='$champ'"; ?> />
<input type="hidden" name="asupr" value="asupr" />
<input type="button" value="Supprimer" onclick="select_selected(this.form);" />
</form>