2012-02-17 13 views
1

私は、サーバー側にクライアント側(ジャバスクリプト/ AJAX)上のドロップダウンボックスから選択した値(PHP)を送信しようとしていますサーバー側で未定義のインデックスエラーメッセージを取得していますを読んでGET 。私は、クライアント側のGETが正しくURLを送信していないか、それがある場合は、それがnullとして値を送信しているという感覚を持っています。AJAX XMLHTTPリクエストは、未定義のインデックスXMLファイル

誰もがこの問題を解決するためにどのように任意のアイデアを持っています。

<title>test</title> 
<script type="text/javascript" src="jquery.js"></script> 

<script type="text/javascript"> 
$(document).ready(function() 
{ 
    $.getJSON("process.php", function(fileName) 
{   
    for(var i in fileName) 
    { 
     fileName[i] = fileName[i].split("../Test/").join("") 
     fileName[i] = fileName[i].split(".xml").join("") 
     document.dropDown.file[i]= new Option(fileName[i],"../Test/"+fileName[i]+".xml", false) 
    }  
}); 

}); 

var xmlhttp; 
function getFile(str){ 
alert("xmlprocess.php?filename="+str); 
if (str=="") 
{ 
    document.getElementById("txtHint").innerHTML=""; 
    return; 
} 
if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.onreadystatechange= response(file); 
{ 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
document.getElementById("txtHint").innerHTML= xmlhttp.responseText; 
} 
} 

xmlhttp.open("GET","xmlprocess.php?filename="+str,true); 
xmlhttp.send(); 
} 

</script> 
</head> 
<body> 

<form name = "dropDown"> 
<Select name = "file" onclick = "getFile(str1)" onchange = "str1 = this.options[this.selectedIndex].value"></Select> 
</form> 

<div id="txtHint"></div> 
</html> 

と、サーバー側のコードは次のとおりです: クライアント上のコードがある

<?php 
ini_set('display_errors',1); 
error_reporting(E_ALL); 

$br = "<br>"; 
$filename = $_GET["filename"]; 
echo $filename; 
?> 

答えて

0

IVEは私が等しくなるようにonreadystatechangeにを変更しなければならなかった答え

を発見し[OK]をみんなクライアント側の機能に

xmlhttp.onreadystatechange= function(){ 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
     document.getElementById("txtHint").innerHTML= xmlhttp.responseText; 
    } 
}; 
下に示すように、
関連する問題