2013-03-07 3 views
0

Je cherche à avoir les valeurs State et Zip_code remplies sur mon appel ajax. Au lieu de l'avoir dans txtzip. Je voudrais que les champs État et ZIP_CODE remplis avec des valeurs de txtzipchamp de texte rempli sur l'appel ajax

Voici mes tentatives jusqu'à présent:

<input type="text" name="State" id="State" placeholder="NY" value="" size="5"/> 
<input type="text" name="Zip_Code" placeholder="zip code" value="" size="10" /> 
<div id="txtZip"><b>Person info will be listed here.</b></div> 

code Ajax

function showZip(str) 
{ 
if (str=="") 
    { 
    document.getElementById("txtZip").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=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("txtZip").innerHTML=xmlhttp.responseText; 
    } 
    } 
xmlhttp.open("GET","Getzip.php?q="+str,true); 
xmlhttp.send(); 
} 

code PHP

$q=$_GET["q"]; 

$con = mysql_connect('localhost', 'root', 'root'); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db("Leadbook", $con); 

$sql="SELECT * FROM Zip WHERE City = '".$q."'"; 

$result = mysql_query($sql); 

while($row = mysql_fetch_array($result)) 
    { 

    $State = $row['State']; 
    $Zip_Code = $row['Zip Code']; 

    $info[] = array('State' => $State, 'Zip Code' => $Zip_Code); 
    } 
echo json_encode($info); 

mysql_close($con); 
?> 

Question: Comment est-ce que je peux faire ceci?

+0

au lieu de la valeur d'usage innerHTML. Comme document.getElementById ("Zip_code"). Value = xmlhttp.responseText; –

Répondre

0

Il vous suffit de changer le sélecteur pour Zip_code dans ces deux lignes:

document.getElementById("Zip_code").innerHTML=""; 

document.getElementById("Zip_code").innerHTML=xmlhttp.responseText; 

Entraînant:

function showZip(str) 
{ 
if (str=="") 
    { 
    document.getElementById("Zip_code").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=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("Zip_code").innerHTML=xmlhttp.responseText; 
    } 
    } 
xmlhttp.open("GET","Getzip.php?q="+str,true); 
xmlhttp.send(); 
} 
+0

Je l'ai changé ... ne fonctionne toujours pas showZip (str) { if (str == "") { document.getElementById ("Zip_Code"). InnerHTML = ""; retour; } if (window.XMLHttpRequest) {// code pour IE7 +, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } sinon {// code pour IE6, IE5 xmlhttp = new ActiveXObject ("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == == 4 && xmlhttp.status 200) {document.getElementById ("zip_code"). SetAttribute ("valeur", xmlhttp.responseText } } xmlhttp.open ("GET", "Getzip.php? Q =" + str, true); xmlhttp.send(); } –

+0

Ok..je l'ai fonctionné ... mais il met le champ d'état avec le champ Zip_Code ... je cherche à les séparer ... merci –

+0

j'ai changé le tableau $ info [] = array ($ State , $ Zip_Code); –

Questions connexes