这是我的jsp:
我保证:names,ids中均有正确的值
<%@ page language="java" import="com.HibernateSessionFactory" pageEncoding="gbk"%>
<%@page import="entity.Names"%>
<html>
  <head>
  <script type='text/javascript' src='/test/dwr/interface/JFind.js'></script>
  <script type='text/javascript' src='/test/dwr/engine.js'></script>
  <script type='text/javascript' src='/test/dwr/util.js'></script>
  <script type="text/javascript">
  <%HibernateSessionFactory.getSession();//提前加载sessionfactory%>
  
  var names=new Array();//用來接收所有的用戶名
  var ids=new Array();//用來接收所有的用戶名id
  var My=null;
  
  Array.prototype.toString=function()
 {
  var str="[";
  for(var i=0;i<this.length;i++)
  {
   str=str+this[i]+",";
  }
  return str+"]";
 }
 
   function getNames()
{
   My=document.getElementById("My").value;
   JFind.toJson(My,showNames);
}
  
   function showNames(data)//回調函數
{
var sel=document.getElementById("sel");
var mdiv=document.getElementById("mdiv");
    var datas = eval(data);
   
    for(var i=0;i<datas.length;i++)
    {
    mdiv.style.display='';
    sel.style.display='';
    ids[i]=datas[i][0];
    names[i]=datas[i][1];
    sel.add(new Option(names[i]),ids[i]);//填充下拉框
    }}function change()
{ //向文本框框中賦值
var sel=document.getElementById("sel").value;
document.getElementById("My").value=sel;
} </script>
</head>
  <body>
    This is my JSP page. <br>
    <input type="text" name="Mys" id="My" onKeyUp="getNames()">
    <div id="mdiv" name="mdiv" style="display:none">
    <select id="sel" name="sel" style="display:none" onChange="change()"></select>
    </div>
  </body>
</html>

解决方案 »

  1.   

    function change(val)
    { //向文本框框中賦值
    document.getElementById("My").value=val;
    }///////////////////////
    <select id="sel" name="sel" style="display:none" onchange="change(this.value);"> </select> 
      

  2.   

    利用select的checked属性, 读取它们的值,再赋给txt文本即可.
      

  3.   

    select 控件 有value 和 text 这两个属性,下拉框中看到的是 text 的内容,还有一个 option 隐藏的 value,看你要什么,就取什么,当然 value 和 text 可以设置成一样的;function change() 

    var selectObj = document.getElementById("sel");
    var selText = selectObj[selectedIndex].text;
    var selValue = selectObj[selectedIndex].value;//向文本框框中賦值 
    document.getElementById("My").value = selValue; 
      

  4.   

    楼上的都很正确,不过还一点我要提醒你的是select不要家size属性