Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1798 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  erreur javascript "objet attendu"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

erreur javascript "objet attendu"

n°1759426
capri36
Posté le 15-07-2008 à 10:14:12  profilanswer
 

Bonjour,  
 
actuellement, je bosse en php/javascript/html. j'ai donc tout d'abord ma page avec un select qui, dès qu'un element est coché, affiche un 2eme select en dessous. ce que je veux faire ensuite, c'est qu'a partir de ce 2eme select, afficher en dessous les elements selectionné a l'aide du onChange.
 
pour cela, j'utilise une fonction ajax qui est file(fichier) et que j'ai déja utilisé pour passer du 1er au 2eme select cependant, à present, il me met une erreur javacript me disant "objet attendu" et je ne sais pas d'ou cela vient. voici le code :
 
<?
include("fonctions.php" );
header("Content-type: text/html; charset=iso-8859-15" );
echo "<link rel='stylesheet' href='./styles/flu.css' type='text/css' />";
 
?>
<SCRIPT Language = "Javascript">
function file(fichier)
{
     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest();
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
     else
          return(false);
     xhr_object.open("GET", fichier, false);
     xhr_object.send(null);
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(false);
}
 
function selection_variables(id,syn_id)
{
   
   texte = file('./selection_variables.php?id='+escape( id ) );
   window.parent.opener.parent='CreationCompo.php?syn_id='+syn_id;
   document.getElementById('selection').innerHTML = texte;
     
}
</script>
<?
$id = $_GET['id'];
$syn_id = $_GET['syn_id'];
//echo $syn_id;
$variables = Requete_db("SELECT vsrc_id, vsrc_nom FROM ts_vsrc where vsrc_src_id=$id","graphes" );
 
echo "<select name='variables' STYLE='width:250' id='lst_variable' onChange='selection_variables(this.value,".$syn_id." )' size='5'>";
 
foreach($variables as $value)
        {
        $vsrc_id = $value[0];
        $vsrc_nom = $value[1];
 
        echo "<option class='orange2' value='$value[0]' label='$value[1]'></option>";  
       }
       
echo "</select>";
?>
 
merci de vos réponses ;)


Message édité par capri36 le 15-07-2008 à 10:21:47
mood
Publicité
Posté le 15-07-2008 à 10:14:12  profilanswer
 

n°1759433
Bidem
Posté le 15-07-2008 à 10:32:08  profilanswer
 

Citation :

il me met une erreur javacript me disant "objet attendu" et je ne sais pas d'ou cela vient.


 
Il doit y avoir un numéro de ligne avec ce message.
 
Montre nous plutot le code Html généré (et pas le source Php)

n°1759438
capri36
Posté le 15-07-2008 à 10:36:54  profilanswer
 

oui mais le truc, c'est que mon erreur pointe sur un "<link rel="stylesheet" href="./styles/synop.css" type="text/css" />", rien a voir avec mon javascript et je travaille sur plusieurs pages, page php, page html et une 3eme php qui appel mon 2eme select (qui est dans mon premier post)

n°1759474
capri36
Posté le 15-07-2008 à 11:01:14  profilanswer
 

voici mon code html :  
 
<SCRIPT Language = "Javascript">
 
function file(fichier)
{
     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest();
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
     else
          return(false);
     xhr_object.open("GET", fichier, false);
     xhr_object.send(null);
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(false);
}
 
function charger_variables(id,syn_id)
{
  texte = file('./Charger_variables.php?id='+escape( id )+'&syn_id='+syn_id );
  document.getElementById('connex').innerHTML = texte;
}
</script>
<html>
  <head>
    <link rel="stylesheet" href="./styles/synop.css" type="text/css" />
    <link rel="icon" href="./images/aic.ico" type="image/x-icon">
    <link rel="SHORTCUT ICON" href="./images/aic.ico" type="image/x-icon">
    <title> Gestion des synoptiques </title>
  </head>
  <body>
  <form name="add" action="" method="POST">
    <table width="100%" height="10%" border="1" class="entete">        <tr>
        <td>
        Choix de connexion :
        </td>
        <td width="40%" align="center">
         <select name="connexion" STYLE='width:150' id="lst_modele" onChange="charger_variables(this.value,11)">
          <option class='orange2' value="0">&lt;type de connexion&gt;</option>
          <option class='orange1' value="1">spc00002 - wwuser</option><option class='orange2' value="3">localhost - root</option>
      </select>
        </td>
        <td align="center">
        <a href="" target="_parent">Ajouter une connexion</a>  
        </td>
        </tr>
        <tr>
        <td>
        Choix de variables :
        </td>
              <td align="center" height="20%" id="connex">
        </td>
        <td align="center">
        <a href="" target="_parent">Ajouter une variable</a>  
        </td>
      </tr>
      <tr>
      <td colspan="3" align="center">
      Liste des variables sélectionnées :
      </td>
      </tr>
      <tr bgcolor="#D0FFFF">
      <td align="center" width="100%" height="30%" colspan="3">
      <div id='selection'></div>
      -  vsrc_nom   --  description   --  <img src="./images/supp.png">
      </td>
      </tr>
      <tr>
      <td colspan="3" align="center">
      <a href="" target="_parent">Créer les variables</a>  
      </td>
      </tr>
      </table>
      <table class="entete" width="100%" height="7%">
      <tr>
      <td>
      <td width="50%" align="center">
      <a href="" target="_parent">Valider</a>
      </td>
      <td width="50%" align="center">
      <a href="" target="_parent">Retour</a>
      </td>
      </tr>
    </table>
    </form>
  </body>
</html>
 
et mon script précedent correpond au "Charger_variables.php"

n°1759526
Bidem
Posté le 15-07-2008 à 11:53:37  profilanswer
 

Code :
  1. <select name="connexion" STYLE='width:150' id="lst_modele" onChange="charger_variables(this.value,11)">
 

L'élément select n'a pas de value.

 

Dans le cas des select simples, tu peux accéder à l'option choisie via l'attribut selectedindex

 

essaye ça :

Code :
  1. onChange="charger_variables(this.options[this.selectedindex].value,11)"


Message édité par Bidem le 15-07-2008 à 11:54:01
n°1759993
mIRROR
Chevreuillobolchévik
Posté le 16-07-2008 à 00:02:18  profilanswer
 

euh si ca marche tres bien le onchange prend la value de l option choisie
par contre justre pour la forme c est
<script type="text/javascript">
et ca doit etre a l interieur du header
pareil pour ta css en echo

 

pour ton probleme c est qu une fonction xhr ne retourne rien donc file est vide, donc texte est vide donc tu fais un undefined sur ton innerHTML
tu dois definir une fonction qui se declenchera quand ta requete sera terminée (au moment ou le onchange se produit ta requete n a pas encore été éxécutée)
c est cette ligne qui est fausse
if(xhr_object.readyState == 4) return(xhr_object.responseText);
au moment de la requete elle est a zero (ou un je sais plus :o) et tu n as personne pour ecouter quand ca change (d ou la fonction sur le onreadystatechange dans mon exemple)

 

edit:
oops le lien qui va bien :D
http://www.xul.fr/xml-ajax.html#ajax-lire-texte


Message édité par mIRROR le 16-07-2008 à 00:06:18

---------------
« The enemy is the gramophone mind, whether or not one agrees with the record that is being played at the moment. » — George Orwell

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  erreur javascript "objet attendu"

 

Sujets relatifs
Javascript dans pages HTML je suis POMERUn site en ajax et les fonctions javascript ?
[DOTNET] ArrayList d'OBJET -> Supprimer doublonsEncodage avec javaScript
Sérialiser un objet contenant des objets.lien src en javascript
[Réglé][JavaScript] Erreur 'Object expected'[JSF]erreur No Converter for type java.util.Date found
erreur de codage 
Plus de sujets relatifs à : erreur javascript "objet attendu"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR