function check(str)
{
var xmlhttp;
if (str.length==0)
{
document.getElementById("msg").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("msg").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","pro/ajaxname.php?what="+str+"&value="+str.id,true);
xmlhttp.send();
}
<input id="mail" class="b-form2" name="mail" size="24" type="text" value="推荐使用微软邮箱!" onblur="check(this.value)"/>
-------------------------------------
我在这个邮箱输入框输入后,onblur传送给后台,输出两个内容,一个是我刚才输入的邮箱,还有这个input的id=“我要获取这个值”,可是这段代码目测只能输出邮箱,id号显示undefineda。
"pro/ajaxname.php?what="+str+"&value="+str.id改成获取当前的输入框的id号
javascript
ajax
xmlhttprequest
------解决方案--------------------
str是字符串,id属性当然是undefined,传递对象
<input id="mail" class="b-form2" name="mail" size="24" type="text" value="推荐使用微软邮箱!" onblur="check(this)"/>
function check(str)
{
var xmlhttp;
if (str.value.length==0)/////////////////
{
document.getElementById("msg").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("msg").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","pro/ajaxname.php?what="+str.value+"&value="+str.id,true);/////
xmlhttp.send();
}