Hallo alle Ich arbeite in einem PHP-Projekt. Ich bin mit einem Problem im Zusammenhang mit Ajax stecken geblieben.Ajax arbeitet mit Javascript
Ich habe eine Auswahlbox für Unternehmen, auf deren Auswahlabteilung mit Ajax angezeigt wird, und bei der Auswahl der Abteilung aus der Abteilung wählen Sie das Feld zusammen mit einer anderen Benutzergruppe wählen Sie die Liste der Benutzer.
Jetzt bei Änderung der Benutzergruppe I Sende eine Anfrage an den Server unter Verwendung von Ajax als Benutzergruppen-ID und Abteilungs-ID, um die jeweiligen Benutzer zu holen. Aber wenn ich die Abteilung erneut auswähle, kann ich die neue Benutzerliste nicht bekommen, da diese Abteilungsliste von ajax erzeugt wird und Ajax nicht mit Javascript arbeitet.
-Code Ich arbeite mit:
Auswahlbox wählen Unternehmen
<select name="companyname" id="companyname" onchange="javascript:dochange(this.value);">
<option value="-1">-----Select Company-----</option>
<?php foreach($user_obj->getUserCompanyname() as $key => $value){
$selected = '';
if($value['company_id'] == $user_obj->user_company_id){
$selected = 'selected="selected"';
}
?>
<option value="<?php echo $value['company_id'];?>"
<?php echo $selected;?>><?php echo $value['company_name'];?></option>
<?php }?>
Javascript Ajax auszuführen
<script>
//Inint_AJAX funnction is excluded as it has to do anything with requirement
function dochange(val) {
var req = Inint_AJAX();
req.onreadystatechange = function() {
if (req.readyState==4) {
if (req.status==200) {
document.getElementById('selectdepartment').innerHTML="";
document.getElementById('selectdepartment').innerHTML=req.responseText; //retuen value
}
}
};
req.open("GET", "company.php?val="+val); //make connection
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1"); // set Header
req.send(null); //send value
}
</script>
company.php
$val=$_GET['val'];
echo "<select name='departmentname' id='departmentname'>\n";
echo "<option value='-1'><b>Select Department</b></option>\n";
foreach($user_obj->getUserDepartmentname($val) as $k=>$vals){
echo "<option value='".$vals['department_id']."'>".$vals['department_name']."</option>";
}
echo "</select>\n<br>";
echo " <span class='asterisk>NOTE:Please (Re)Select the User Group everytime you change department.</span>";
User Group Select Box
<select name="usergroupname"
onchange="javascript:dochangereport(this.value,document.getElementById('departmentname').value);
dochangeoverride(this.value,document.getElementById('departmentname').value);" id="usergroupname">
<option value="-1">Select User Group</option>
<?php
foreach($user_obj->getUserGroupName() as $gkey=>$gval){
$gselect = '';
if($gval['usergroup_id'] == $user_obj->user_group_id){
$gselect = 'selected="selected"';
}
?>
<option value="<?php echo $gval['usergroup_id'];?>"
<?php echo $gselect;?>><?php echo $gval['usergroup_name'];?>
</option>
<?php }?>
</select>
Funktionsaufruf Ajax-Aufruf
<script>
function dochangereport(val,dep) {
var req = Inint_AJAX();
req.onreadystatechange = function() {
if (req.readyState==4) {
if (req.status==200) {
document.getElementById('selectreport').innerHTML="";
document.getElementById('selectreport').innerHTML=req.responseText; //retuen value
}
}
};
req.open("GET", "reportto.php?val="+val+"&dep="+dep); //make connection
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=iso-8859-1"); // set Header
req.send(null); //send value
}
</script>
**reportto.php**
$val=$_GET['val'];
$dep=$_GET['dep'];
echo "<select name='reportingto[]' multiple='multiple' size='3'>\n";
echo "<option value='-1'><b>Select Supervisor(s)</b></option>\n";
foreach($user_obj->getUserReportingto($val,$dep) as $rkey=>$rval){
echo "<option value='".$rval['user_id']."'>".$rval['user_fname']." ".$rval['user_fname']." </option>";
}echo "</select>\n";
könnte mir jemand helfen in dieser heraus?
Könnten Sie bitte etwas Code zeigen? – acm
Können Sie einen Code posten, der nicht funktioniert? –
Betrachten Sie die bearbeitete Frage mit dem Code, den ich verwende –