like this is my form’s select box
<select name="cutid" onchange="findcustid(this.value)">
<option value="1001">cust 1</option>
<option value="1002">cust 2</option>
<option value="1003">cust 3</option>
</select>
now i have this ajax code which is passing and fill some select boxes
function findcustid(custid) {
var custid = custid;
}
function Inint_AJAX() {
try {
return new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {} //IE
try {
return new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {} //IE
try {
return new XMLHttpRequest();
} catch (e) {} //Native Javascript
alert("XMLHttpRequest not supported");
return null;
};
function dochange(src, val) {
var req = Inint_AJAX();
req.onreadystatechange = function () {
if (req.readyState == 4) {
if (req.status == 200) {
document.getElementById(src).innerHTML = req.responseText; //retuen value
}
}
};
req.open("GET", "podetfill.php?data=" + src + "&val=" + val + "&custid=" + custid); //make connection
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1"); // set Header
req.send(null); //send value
}
window.onLoad = dochange('proid', -1); // value in first dropdown
on this line
req.open("GET", "podetfill.php?data="+src+"&val="+val+"&custid="+custid);
of above code i’ve added +"&custid="+custid this but its not pass value of custid on podetfill.php page and getting error
Error: custid not defined
You cannot use your method for the following reasons :
var custidis declared within a function – so its only accessible within that functionvar custidwas declared a global you still couldn’t use it as the AJAX gets executed using thewindow.loadevent meaning theselect.changeevent wouldnt have been fired yetOne solution would be to get the value of the
selectbefore using it :you also need give the
selectanidattribute to use this code :