不提交而修改数据库的方法.

发表于:2007-05-25来源:作者:点击数: 标签:
很多注册会员的地方,都有一个检测会员帐号是否可用的功能,而且点击按钮后不用提交就可以完成检测,下面就是它的实现方法 input name="nick" type="text" id="nick" span id="msg"/span input name="over" type="button" id="over" onClick="checknick();" val

很多注册会员的地方,都有一个检测会员帐号是否可用的功能,而且点击按钮后不用提交就可以完成检测,下面就是它的实现方法
<input name="nick"  type="text" id="nick" >
<span id="msg"></span>
<input name="over"  type="button"  id="over" onClick="checknick();" value="检测帐号">


<iframe id="sendframe" name="sendframe" alt="不提交而修改数据库的方法." src=http://www.3pcode.com/article/article_115/about:blank width="0" height="0" scrolling="no"></iframe>
<form action="lookover.php" method="post" name="receive"  id="receive" target="sendframe">
  <input name="h_nick" type="hidden" id="h_nick" value="">
</form>
<script>
function checknick()
{
 document.getElementById("h_nick").value=document.getElementById("nick").value;
  document.getElementById("msg").innerText="正在检测,请稍后...";
 document.receive.submit();
}
</scrip>
工作原理:填入帐号后,点击检测按钮,用js checknick()把表单receive提交,不过提交的目标是iframe,这样就实现了不跳转提交了,在lookover.php你就可以写读取数据库或是修改数据的语句了.<span id="msg"></span>是用来取得返回信息的,比如checknick()函数中,就用document.getElementById("msg").innerText="正在检测,请稍后...";来返回信息的,而在lookover.php要返回信息就要用parent.getElementById("msg").innerText="帐号可用"来返回.
原理其实就跟异步联动一样.

原文转自:http://www.ltesting.net