Tableau dynamique asp + controle bt radio javascript

Signaler
Messages postés
4
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
10 juin 2004
-
Messages postés
4
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
10 juin 2004
-
Bonjour je réalise actuellement une application pour mon stage afin de rechercher et réserver un bouquin et j apprends à manipuler asp + javascript.
J'ai un probleme au niveau d'un controle javascript qui vérifie si un bouton radio a été cocher.
Il fonctionne normalement si mon tableau dynamique renvoie plusieurs enregistrements mais s il en renvoie 1 seul il ne detecte pas que j ai cocher le bouton radio.
(surement un probleme de boucle et de condition)

Voici le code:

<script language= "JavaScript">
<!--
function testvide(champ){
for(i=0;i<champ.length;i++)
if (champ[i].checked)return true
alert("Une donnée est manquante (case à cocher)")
return false
}//-->
</script>

 

<% '-----si recherche par titre %>

<% if choixrech="titre" then %>


<% RSrech.open "SELECT DISTINCT Titre,RefOuvrage,NomAut,SSTheme,Tome,Volume FROM Ouvrages,AutOuvr,Auteurs,SousThèmes WHERE [Titre] LIKE '%"&motclef&"%' AND Ouvrages.RefOuvrage=AutOuvr.RefOuvr AND AutOuvr.RefAut=Auteurs.RefAuteur AND Ouvrages.RefSSTheme=SousThèmes.RefSSTheme ORDER BY Titre asc",Connexion %>

<% if Rsrech.eof=false then %>

<center>


<table border="1" width=100%>
<tr>
<td> Numéro </td>
<td>Titre</td>
<td>Auteur</td>
<td>Sous-Thème</td>
<td>Tome</td>
<td>Volume</td>
<td>Sélectionné</td>
</tr>

<% RSrech.MoveFirst
DO While Not RSrech.eof %>

<tr>
<td><% =RSrech("RefOuvrage")%></td>
<td><%= RSrech("Titre")%></td>
<td> <%=RSrech("NomAut")%> </td>
<td><% =RSrech("SSTheme")%></td>
<td><%=RSrech("Tome")%></td>
<td><%=RSrech("Volume")%></td>
<td>"></td>
</tr>


<%
RSrech.Movenext
Loop
End if
End if
%>

merci de votre aide je suis une merde en javascript....

6 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
si plusieurs champs sont générés
on peut utiliser champ.checked
[i]mais si un seul est généré
on utilise alors champs.checked
sans indice.
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
erreur "d'affichage"
si plusieurs champs on
peut utiliser champs [ n ] . checked

Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
4
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
10 juin 2004

champ c juste un parametre qui prend this.cocher avec un s ou pas ca reviens au meme.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
pas compris ma réponse :
si plusieurs champs sont générés
on peut utiliser champs [ n ] . checked
si un seul champ est généré
on ne peut qu'utiliser champs.checked
sans indice.
par exemple
<form>

</form>
t[0].checked et t[1].checked autorisés

si
<form>

</form>
t.checked seul est permis
et t [ n ].checked donne une erreur de syntaxe

Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
4
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
10 juin 2004

MERCI BEAUCOUP :) super efficace super rapide
THX BULTEZ même si c un post de débutant voici le code.
J ai fais ca et ca marche nickel:

<script language="JavaScript">
<!--
function testvide(champ){

if (champ.checked)return true;

for(i=0;i<champ.length;i++)
if (champ[i].checked)return true;

alert("Une donnée est manquante (case à cocher)")
return false
}
//-->
</script>
Messages postés
4
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
10 juin 2004

J ai un autre problème il faut que je fasse un controle pour bloquer l envoi si ma requete renvoie 0 enregistrement.
donc j'ai creer une variable asp
<% compteur=0 %>au départ
et si la requete renvoie au moins une valeur
<%compteur=compteur+1%>
mais ca marche pas si kelk1 pouvait m'aider ca serai bien cool.

code:<%compteur=0%>

<script language="JavaScript">
<!--
function testvide(champ){

compteurjava=<%=compteur%>;

if (champ.checked)return true;

for(i=0;i<champ.length;i++)
if (champ[i].checked)return true;

if (compteurjava== 0)return false;

alert("Une donnée est manquante (case à cocher)")
return false
}
//-->
</script>



<center><gras> Recherche d'un livre :

<form method ="post" action="Bibliform.asp" onSubmit="return testvide(this.cocher)">


Veuillez sélectionner un livre et lancer la réservation.

Pour toute nouvelle recherche revenir à la page précédente.


Vous ne pouvez réserver qu'un livre à la fois.

 


<% '-----si recherche par titre %>

<% if choixrech="titre" then %>


<% RSrech.open "SELECT DISTINCT Titre,RefOuvrage,NomAut,SSTheme,Tome,Volume FROM Ouvrages,AutOuvr,Auteurs,SousThèmes WHERE [Titre] LIKE '%"&motclef&"%' AND Ouvrages.RefOuvrage=AutOuvr.RefOuvr AND AutOuvr.RefAut=Auteurs.RefAuteur AND Ouvrages.RefSSTheme=SousThèmes.RefSSTheme ORDER BY Titre asc",Connexion %>

<% if Rsrech.eof=false then %>
<% compteur=compteur+1 %>

<center>


Numéro,
Titre,
Auteur,
Sous-Thème,
Tome,
Volume,
Sélectionné,

<% RSrech.MoveFirst
DO While Not RSrech.eof %>

----

<%=RSrech("RefOuvrage")%>,
<%=RSrech("Titre")%>,
<%=RSrech("NomAut")%>,
<%=RSrech("SSTheme")%>,
<%=RSrech("Tome")%>,
<%=RSrech("Volume")%>,
">,

<%
RSrech.Movenext
Loop
End if
End if
%>
</center>