解决方案 »
- 我很茫然.....这个安全控件....
- PHP过滤代码,正则表达式过滤<script></script>
- 网盘程序download.php的错误,请教
- php 5.2.17安装过程中Apache configuration direcotry: 路径填什么???
- php 读取vfp 8.0,9.0所产生的dbf文件
- mysql条件使用or查询不会触发索引?
- 数据库分离后远程mysql主页面打开很慢
- $_POST的值不大好啊!!!
- 请问如何实现确认窗口?
- 服务器运行错误: 数据库db_demo连接失败
- mysql 如何获得某条记录在查询结果集中的索引(顺序)
- php 的json_decode函数怎么解决单引号啊
所以用<div>比较好
<input type="text" id="keywords"/><div id="keywords_txt"></div>document.getElementById("keywords_txt").innerHTML=keywords;
因为这个返回结果是允许修改的,所以用div不太合适。
<input type="text" id="keywords" value=""/>
document.getElementById("keywords").value=keywords;
<input type="text" id="keywords"/><div id="keywords_txt"></div>document.getElementById("keywords_txt").innerHTML=keywords;
这样,它同样提示 对象不支持此属性或方法你这个表单的代码如果把 <input type="text" id="keywords"/> 这一句去掉,就正常了。但还是div接收,不是input了。
这样也是这种错误提示,我先前测试过了。刚才又测试一遍(在我以前的基础上加了你的value=""),还是那个错误提示。错误提示指向了46行: <input type="text" name="title" id="title" value="" onBlur="keywords()" />这个就是开始调用ajax函数的语句。发生在标题栏失去焦点的时候。
其中包含ajax的定义实例化。
<script language="javascript">
function createXMLHttp()
{
var request;
var browser=navigator.appName;
if(browser=="Microsoft Internet Explorer")
{
request=new ActiveXObject("Microsoft.XMLHttp");
return request;
}
else
{
request=new XMLHttpRequest();
return request;
}
}
var xhr=createXMLHttp();
function keywords()
{
var url="keywords.php";
// url=encodeURI(url);
var poststr="title="+form1.title.value+"&content="+form1.content.value;
xhr.open("POST",url,true);
xhr.setRequestHeader("Content-Length",length);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.onreadystatechange=getkeywords;
xhr.send(poststr); //将请求发送
}
function getkeywords()
{
if(xhr.readyState==4)
{
var keywords = xhr.responseText;
//下面这一行,是我用input接收ajax返回的数据时使用的方法。老是提示不支持属性或方法
document.getElementById("keywords").value=keywords;
//下面这一行,是我用div接收ajax返回的数据时使用的方法,一切正常。
document.getElementById("keywords").innerHTML=keywords;
}
}
</script>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>
<body style="text-align:center" onLoad="form1.title.focus()">
<form name="form1">
<input type="text" name="title" id="title" size="60" value="" onBlur="keywords()" />
<p><textarea id="content" name="content" cols="60" rows="20" onBlur="keywords()">
</textarea></p>用input接收返回的数据,用这一行,提示错误不支持属性方法
<input type="text" id="keywords" value="" />
用div接收返回的数据,一切正常。
<!--<div id="keywords"></div> -->
</form>
</body>
</html>这是全部代码了。ID也没有重复。麻烦给看下。
错误行:<input type="text" name="title" id="title" size="60" value="" onBlur="keywords()" />
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script language="javascript">
function createXMLHttp()
{
var request;
var browser=navigator.appName;
if(browser=="Microsoft Internet Explorer")
{
request=new ActiveXObject("Microsoft.XMLHttp");
return request;
}
else
{
request=new XMLHttpRequest();
return request;
}
}
var xhr=createXMLHttp();
function keywords()
{
var url="keywords.php";
// url=encodeURI(url);
var poststr="title="+form1.title.value+"&content="+form1.content.value;
xhr.open("POST",url,true);
xhr.setRequestHeader("Content-Length",length);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.onreadystatechange=getkeywords;
xhr.send(poststr); //将请求发送
}
function getkeywords()
{
if(xhr.readyState==4)
{
var keywords = xhr.responseText;
//下面这一行,是我用input接收ajax返回的数据时使用的方法。老是提示不支持属性或方法
document.getElementById("keywords").value=keywords;
//下面这一行,是我用div接收ajax返回的数据时使用的方法,一切正常。
//document.getElementById("keywords").innerHTML=keywords;
}
}
</script>
</head>
<body style="text-align:center" onLoad="form1.title.focus()">
<form name="form1">
<input type="text" name="title" id="title" size="60" value="" onBlur="keywords()" />
<p><textarea id="content" name="content" cols="60" rows="20" onBlur="keywords()">
</textarea></p>
<!--用input接收返回的数据,用这一行,提示错误不支持属性方法-->
<input type="text" id="keywords" value="" />
<!--用div接收返回的数据,一切正常。-->
<!--<div id="keywords"></div> -->
</form> </form>
</body>
</html>
<p><textarea id="content" name="content" cols="60" rows="20" onBlur="keywords()"> function keywords()函数名改了或者
<input type="text" id="keywords" value="" />
document.getElementById("keywords").value=keywords; 这两处id改了先试试
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script language="javascript">
function createXMLHttp(){
var request;
var browser = navigator.appName;
if (browser == "Microsoft Internet Explorer") {
request = new ActiveXObject("Microsoft.XMLHttp");
return request;
}
else {
request = new XMLHttpRequest();
return request;
}
}
var xhr = createXMLHttp();
function sendQuery(){
var url = "keywords.php";
var poststr = "title=" + form1.title.value + "&content=" + form1.content.value;
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Length", length);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = getkeywords;
xhr.send(poststr); //将请求发送
}
function getkeywords(){
if (xhr.readyState == 4) {
var keywords = xhr.responseText;
alert(keywords);
//下面这一行,是我用input接收ajax返回的数据时使用的方法。老是提示不支持属性或方法
document.getElementsByTagName('input')[1].value = keywords;
//下面这一行,是我用div接收ajax返回的数据时使用的方法,一切正常。
//document.getElementById("keywords").innerHTML=keywords;
}
}
</script>
</head>
<body style="text-align:center" onLoad="form1.title.focus()">
<form name="form1">
<table>
<tr><td><input type="text" name="title" id="title" size="60" value="" onBlur="sendQuery();"/></td></tr>
<tr><td><textarea id="content" name="content" cols="60" rows="20" onBlur=""></textarea></td></tr>
<tr><td><input type="text" id="kw" name="kw" value="" size="60"/></td></tr>
</table>
</form>
</body>
</html>