<script>
function refresh_event(){//CALLED WHEN EVENT IS CHANGED
document.getElementById("frm_event").submit();
}
function click1(i,stuid){//AJAX CODE
var obj = document.getElementById("event");
var eid = obj.options[obj.selectedIndex].value;
var xmlhttp;
var j=document.getElementById("link"+i).innerHTML;
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}
else{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
//alert("in");
document.getElementById("link"+i).innerHTML=xmlhttp.responseText;
// alert(xmlhttp.responseText);
}
}
//alert("a"+j+"b");
xmlhttp.open("GET","register.php?i="+j+"&sid="+stuid+"&eid="+eid+"&val=1&t="+Math.random(),true);
xmlhttp.send();
}
</script>
<?php
if($val==0){//LANDING PAGE
?>
<?php
if(mysqli_connect_errno()){
echo "connection error";
}
$query="select name,eid from event_info";
$result = mysqli_query($con,$query);
?>
<!-- CODE TO POPULATE EVENT LIST -->
<form id="frm_event" method="GET" action="register.php">
Events:<select id="event" name="event" onchange="refresh_event()">
<?php
if($event==0){
?>
<option value=0 selected> --select-- </option> <!-- IF NOTHING IS SELECTED -->
<?php
}else{
?>
<option value=0> --select-- </option> <!-- IF EVENT IS SELECTED -->
<?php
}
?>
<?php
while($row=mysqli_fetch_array($result)){ //FETCH EVENT FROM DATABASE
if($event==$row['eid']){
?>
<option value=<?=$row['eid'] ?> selected> <?=$row['name'] ?> </option>
<?php
}
else{
?>
<option value=<?=$row['eid'] ?>> <?=$row['name'] ?> </option>
<?php
}
}
?>
</select>
</form>
<?php
$query="select stuid,name from stud_info";
$result = mysqli_query($con,$query);
$i=1;
?>
<br>
<table>
<?php
if($event==0){//IF EVENT IS NOT SET
?>
<?php
while($row=mysqli_fetch_array($result)){
?>
<tr>
<td>
<p><?=$row['name'] ?></p>
</td>
<td>
<a href="javascript:click1(<?=$i ?>,<?=$row['stuid'] ?>);" name="link<?=$i ?>" id="link<?=$i ?>">Assign</a>
<!--<a href="javascript:void(0);" id="link<?=$i ?>" onclick="click()"> Assign 1</a>-->
</td>
</tr>
<?php
$i++;
}
}
else{//IF EVENT IS SET
?>
<?php
while($row=mysqli_fetch_array($result)){//FETCH REGISTERED STUDENT FROM DATABASE
$regid=0;
$stuid=$row['stuid'];
$query_event="select regid from event_register where stuid='$stuid' and eid='$event'";
$result_event=mysqli_query($con,$query_event);
$count1 = mysqli_num_rows($result_event);
?>
<tr>
<td>
<p><?=$row['name'] ?></p>
</td>
<td>
<?php
if($count1>0){//IF STUDENT IS REGISTERED FOR THIS EVENT
?>
<a href="javascript:click1(<?=$i ?>,<?=$row['stuid'] ?>);" name="link<?=$i ?>" id="link<?=$i ?> name=">Remove</a>
<?php
}
else{
?>
<a href="javascript:click1(<?=$i ?>,<?=$row['stuid'] ?>);" name="link<?=$i ?>" id="link<?=$i ?>">Assign</a>
</td>
</tr>
<?php
}
$i++;
}
}
?>
</table>
<?php
}
else{
//$_GET['change']="new";
$val=0;//RESET THE VALUE
$var =$_GET['i'];
$sid = $_GET['sid'];
$eid = $_GET['eid'];
if($var=="Assign"){
//INSERT QUERY
$query="insert into event_register (stuid,eid) values ('$sid','$eid')";
$result = mysqli_query($con,$query);
echo "Remove";
}
else{
//delete
$query="delete from event_register where stuid='$sid' and eid='$eid'";
$result = mysqli_query($con,$query);
//if(mysqli_affected_rows($con)>0){
echo "Assign";
//}
/* else{
echo "Assign";
} */
//return "return";
}
}
?>
这是我的代码。使用php和javacript。尝试使用ajax从数据库中获取值。但是xmlhttp.responseText返回的值给出了问题。
以上是脚本标记的部分内容。 xmlhttp.responseText返回脚本标记的全部内容,包括标记本身。
尝试将getElementbyId更改为getElementsbyName仍然没有运气。
在ajax调用上执行的代码部分就在最后。
非常感谢anyhelp。答案 0 :(得分:-1)
我不确定为什么会发生在您身上,但由于以下原因,它发生在我身上:我已将我的js和php文件命名为相同的名称,例如“ script”,然后在我的js文件中说“ script.js”,而不是将处理程序url设置为script.php,而是将其设置为script.js,因此,如我在script.php中可能的位置,回显“ resp on my php script”,而不是整个文本我的js文件被读出。