日期:2014-05-16  浏览次数:20431 次

输入“用户ID“,自动跳出“用户姓名”
本帖最后由 xilaianzxsc 于 2013-09-20 10:57:18 编辑
先祝各位老师中秋快乐!

正在学习ASP+javascript+SQL

今天遇到的问题是:思路有点理不清。请各位老师,帮理理思路。先怎么设置,再怎么设置....


****************************

SQL表:

表名:Employee
字段名:EmployeeCode  C型
        EmployeeName  C型

*******************************

另有下列一段代码

<form id="form1" name="form1" method="post" action="">
  <p>用户编码:
    <input type="text" name="yhCode" id="yhCode" />
  </p>
  <p>用户姓名:
    <input type="text" name="yhName" id="yhName" />
  </p>
</form>

********************************

“用户编码”,即对应SQL表中的EmployeeCode字段
“用户姓名”,即对应SQL表中的EmployeeName字段


问:当用户在ASP网页中,输入了“用户编码”,如果在网页中自动显示出相对应的“用户姓名”?

请大家写代码,可能浪费各位老师的时间了。

我想请大家,帮理个编程的思路。我再根据老师的思路,我再自己慢慢琢磨。

------解决方案--------------------
监听onkeydown 事件,并在事件中, 先执行取消上一次的延迟执行代码,然后在生成一个本次延迟执行 "搜索名字代码"


伪代码如下
var f;
nameEl.keydown(function(){
     clearTimeout(f);
     f = setTimeout(function(){
          search();
      },500)
})


这里的search就是"搜索名字" 函数。
如果用户量不大的话,可以吧用户信息加载到客户端来处理直接生成一个js对象比如
users:[{name:'a',id:1},{name:'b',id:2}];

那么search直接遍历 users对象,
如果是用户量大的那么久AJAX请求到后台,然后获得你想要的用户 

最后显示到输入框里