Beste,

Ik weet niet of ik het hier kan posten maar ik heb een vreemd probleem: Ik voer de volgende code uit mijn javascript die wordt gestart vanuit een PHP programma.

var x = document.getElementById("id_beginperiode");
var value5 = x.options[x.selectedIndex].text;

Als ik deze javascript code aanroep dan gaat het goed en krijg ik te zien wat ik verwacht. Maar start ik dezelfde javascript nogmaals op vanuit hetzelfde PHP programma dan krijg ik vreemd genoeg een error:

Object doesn't support this property of method en dat gebeurt op de code var value5=.....

Het lijkt te maken te hebben met IE want met firefox lijkt het goed te gaan. Heeft iemand hier ervaring mee of doe ik gewoon iets fout.

Alvast bedankt
Bij deze. Ten eerste de javascript: (regel met var value5 en var value6)


function addexperience(action) {
    var value1 = document.getElementById("id_company").value;
    var value2 = document.getElementById("id_function").value;
    var value3 = document.getElementById("id_location").value;
    var value4 = document.getElementById("cv_textarea").value;
    var x = document.getElementById("id_beginperiode");
    var value5 = x.options[x.selectedIndex].value;
    var x = document.getElementById("id_eindperiode");
    var value6 = x.options[x.selectedIndex].value;
    var value7 = document.getElementById("id_bjaartal").value;
    var value8 = document.getElementById("id_ejaartal").value;
    var value9 = document.getElementById("id_number").value;
    var loadurl = 'addexperience.php?value1='+value1+'&value2='+value2+'&value3='+value3+'&value4='+value4
    var loadurl = loadurl +'&value5='+value5+'&value6='+value6+'&value7='+value7+'&value8='+value8+'&value9='+value9+'&action='+action;

    // Open object
    xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
      alert ("Your browser does not support AJAX!");
      return;
    }
    // the xmlhttp object triggers an event everytime the status changes
    xmlHttp.onreadystatechange = showexperience;
    // open takes in the HTTP method and url.
    xmlHttp.open("GET", loadurl, true);
    // send the request.
    // Moz is fine with just send() but
    // IE expects a value here, hence we do send(null);
    xmlHttp.send(null);


}
function showexperience(){
	if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
		returnarray = xmlHttp.responseText.split("|");

        //Laden section
        if ( returnarray.length <= 1) {
            document.getElementById("id_experience").innerHTML = returnarray[0];
        } else if ( returnarray.length > 1 && returnarray.length < 3 )  { 
            var x=document.getElementById("id_cv3form");
            for (var i=0;i<x.length;i++) {
                if ( x.elements[i].type != "submit") {
                    x.elements[i].value="";
                }  
            }
            //Toevoegen section
            document.getElementById("id_experience").innerHTML = returnarray[1];
        } 
        else  {
        alert (returnarray);

            //Verwerk section
            document.cv3_form.number.value = returnarray[0];
            document.cv3_form.company.value = returnarray[1];
            document.cv3_form.functie.value = returnarray[2];
            document.cv3_form.location.value = returnarray[3];
            document.cv3_form.activities.value = returnarray[4];
            document.cv3_form.bjaartal.value = returnarray[6];
            document.cv3_form.ejaartal.value = returnarray[8];
            
            //
            var x=document.getElementById("id_beginperiode");
            for (i=0;i<x.length;i++){
                if( returnarray[5] = x.options[i].text) {
                    x.selectedIndex = i
                }
            } 

            var x=document.getElementById("id_eindperiode");
            for (i=0;i<x.length;i++){
                if( returnarray[7] = x.options[i].text) {
                    x.selectedIndex = i
                }
            } 
            
            for (i=0;i<=returnarray.length;i++){
                alert (returnarray[i])
            }

            document.getElementById("id_experience").innerHTML = returnarray[returnarray.length-1];

        }

	}
}


Ten tweede PHP: met de eerste aanroep van het javascript:

          echo '<a href="javascript:addexperience()"><img src="images/addbutton.png" border="0"/></a>'; 

En de tweede keer dat ik de code aanroep:

                $aanroep = 'verwerken-'.$temparray[0];
                echo '<td align="center"><a href="javascript:addexperience(\''. $aanroep .'\')">'; 

Controleer eens of value5 en value6 wel de juiste waarde krijgen? Dus zoe zoiets in je javascript:

alert(value5);
Beste Blanche,

Ik denk dat ik het lek boven heb....Omdat ik alles via javescript regel wordt de pagina niet opnieuw geladen. Elke keer als ik een item wil toevoegen en de voorwaardes zijn in orde dan wil ik graag de form velden leegmaken:


        } else if ( returnarray.length > 1 && returnarray.length < 3 )  { 
            var x=document.getElementById("id_cv3form");
            /*for (var i=0;i<x.length;i++) {
                if ( x.elements[i].type != "submit") {
                    x.elements[i].value="";
                }  
            }*/
            //Toevoegen section
            document.getElementById("id_experience").innerHTML = returnarray[1];


Als ik daarna gelijk het nieuw toegevoegde item wil bewerken, zie code in mijn vorige bericht, dan gaat het fout. Dus probleem gevonden nu de oplossing nog.

Reageren