मैं 2 बदलावों का सुझाव दूंगा -
1. onclick
. का उपयोग करने के बजाय, अपने श्रेणी चयन विकल्पों को पृष्ठ लोड पर लोड करें .
-onload="getcategory()"
Add जोड़ें आपके शरीर टैग के लिए।
2.श्रेणी के परिवर्तन पर अपने उपश्रेणी चयन विकल्पों को लोड करें।
-onchange="getsubcategory(this)"
जोड़ें अपने <select id="category">
. पर , और onclick="getsubcategory(cat)"
. को हटा दें अपने <select id="subcat" >
. से
-फिर var catval = cat.options[cat.selectedIndex].value;
का इस्तेमाल करें आपके getsubcategory()
. में चयनित मान प्राप्त करने के लिए।
अब यह दिखेगा -
...
<!DOCTYPE html>
<html>
<head>
<script>
function getcategory() {
var xmlhttp;
if(window.XMLHttpRequest) {
//code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp= new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if(xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("category").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","AddItemCat.php","true");
xmlhttp.send();
}
function getsubcategory(cat) {
var xmlhttp;
var catval = cat.options[cat.selectedIndex].value;
if(window.XMLHttpRequest) {
//code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp= new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if(xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("subcat").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","AddItemSubCat.php?cat="+catval,"true");
xmlhttp.send();
}
</script>
</head>
<body onload="getcategory()">
<form action="<?PHP echo $_SERVER['PHP_SELF'] ?>" name="additem" enctype="multipart/form-data" method="POST">
<table>
<tr>
<td>Select Category: </td>
<select id="category" onchange="getsubcategory(this)">
<option value=""></option>
</select>
</td>
</tr>
<tr>
<td>Select SubCategory</td>
<td>
<select id="subcat">
<option value=""></option>
</select>
</td>
</tr>
</table>
</form>
</body>
</html>