我有两个文本字段,无论用户在第一个文本字段中输入什么,它都将由Ajax出现在第二个文本字段中。我需要使用for循环来拥有多行,每行都有自己的值。 HTML
<form style="text-align:center" method="post" action="" name="form1">
<?php for($x=0; $x<4; $x++){ ?>
<input type="text" size="30" id="country" onChange="getCurrencyCode('find_ccode.php?country='+this.value)" />
<input type="text" name="cur_code" id="cur_code" ></p>
的Ajax
function getXMLHTTP() {
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}
return xmlhttp;
}
function getCurrencyCode(strURL)
{
var req = getXMLHTTP();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
document.getElementById('cur_code').value=req.responseText;
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
腓
$country=$_REQUEST['country'];
echo $country;
请帮帮我。
答案 0 :(得分:1)
试试这个......
<form style="text-align:center" method="post" action="" name="form1">
<?php for($x=0; $x<4; $x++){ ?>
<input type="text" size="30" id="country<?php echo $x; ?>" onChange="getCurrencyCode(<?php echo $x; ?>);" />
<input type="text" name="cur_code" id="cur_code<?php echo $x; ?>" ></p>
javascript功能
function getCurrencyCode(num)
{
thisval = document.getElementById('country'+num).value;
if(thisval=="") {
alert("Enter Proper Values!...");
return false;
}
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
}catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
alert("Your browser broke!");
return false;
}
}
}
var strURL = "find_ccode.php?country="+thisval;
ajaxRequest.onreadystatechange =getresult;
ajaxRequest.open("GET", strURL, true);
ajaxRequest.send(null);
}
function getresult(){
if(ajaxRequest.readyState == 4){
document.getElementById('cur_code'+num).value = ajaxRequest.responseText;
}
}