<input name=txt1 onkeyup=txt2.value=this.value>
<input name=txt2>

解决方案 »

  1.   

    <input name=txt1 onpropertychange=txt2.value=this.value>
    <input name=txt2>
      

  2.   

    不好意思,你们的做法是完全正确的,我想我的提问可能还没有完全,我想做的是:我想把textbox1里输入的句子作为模糊查询的条件,如果在数据库里有包含这个句子的纪录,则选择其中的一个字段作为listbox1的一个item,请问这个该怎样实现,要求是每当textbox1里输入完一个字符(包括汉字),不需要回车或其他按键,则listbox1里就会查询到包含着各字符的字段,并作为它的一个item,请问这怎样实现?
    我刚开始学javascrip,请大家扶我一把,最好有源代码。谢谢了
      

  3.   

    也就是说,这个listbox1要求动态的生成。麻烦各位了。
      

  4.   

    请参考
    http://www.ccw.com.cn/htm/center/prog/02_6_13_2.asp
      

  5.   

    我刚做完,可以给你一段代码,你自己研究吧!主要是在后台用C#将数据从数据库读出来,然后存到前台的数组里去,在前台对数组进行查询。.aspx代码:
    var Txt;
    function BindArray(obj1,obj2){
    var txtID = obj1;
    Txt = obj1;
    var ArrayName = obj2.concat();
    if(document.activeElement.id==txtID.id)
    {
    var TextValue = txtID.value;
    var i=0;
    var j=0;
    document.CeHui1.listmember.length = 0;
    for(i=0;i<ArrayName.length;i++)
    {
    if(ArrayName[i].toString().indexOf(TextValue,0)>-1)
    {
    var listvalue = ArrayName[i];
    document.CeHui1.listmember.add(new Option(listvalue,listvalue));
    }
    }
    }
    }function TextKeyDown(){
    if(event.keyCode==13)
    {
    document.CeHui1.listmember.focus();
    document.CeHui1.listmember.options(0).selected;
    return false;
    }
    }function listKeyDown(){
    if(event.keyCode==9)
    Txt.focus();
    }function listChange(obj){
    var listObj = obj(obj.selectedIndex).text;
    Txt.value = listObj;
    }<TD vAlign="top" align="left"><SELECT id="listmember" onkeydown="listKeyDown()" onchange="listChange(this)" size="8" name="listmember">
    <OPTION></OPTION>
    </SELECT></TD><TD colSpan="1">
    <INPUT  type="text" id="jflxrTxt" name="jflxrTxt" onpropertychange="BindArray(this,jsArray2)" onkeydown="return TextKeyDown()"></TD>.cs代码:
    public void SqlDataBind()
    {
    int m=0;
    int i=0;
    string [] selsql = new String [5];
    for(m=0;m<5;m++)
    selsql[m] = "select distinct ";
    selsql[0] += "委托单位 from yantu";
    selsql[1] += "工程名称地点 from yantu";
    selsql[2] += "甲方联系人 from yantu";
    selsql[3] += "院经手人 from yantu";
    selsql[4] += "工程负责人 from yantu";
    System.Data.SqlClient.SqlDataReader dreader;
    for(m=0;m<5;m++)
    {
    i=0;
    cehuiDa = new System.Data.SqlClient.SqlDataAdapter(selsql[m],cehuiConn);
    cehuiConn.Open();
    dreader = cehuiDa.SelectCommand.ExecuteReader();
    string [] Record = new string [ProCount];
    string FieldName = dreader.GetName(0);
    while(dreader.Read())
    {
    if(dreader[FieldName].ToString()!="")
    {
    Record[i] = dreader[FieldName].ToString();
    i++;
    }
    }
    dreader.Close();
    cehuiConn.Close();
    int j=0,k=0;
    string strJS;
    string strArray = "jsArray"+m;
    strJS="<script>var "+strArray+" = new Array("+i+");\n";
    for(j=0;j<i;j++)
    {
    if(Record[j].ToString()!="")
    {
    strJS+=strArray+"["+k+"]='"+Record[j].ToString()+"';\n";
    k++;
    }
    }
    strJS+="</script>";
    Response.Write(strJS);
    }
    }你自己好好的研究一下,我不多说了
      

  6.   

    我刚做完,可以给你一段代码,你自己研究吧!主要是在后台用C#将数据从数据库读出来,然后存到前台的数组里去,在前台对数组进行查询。.aspx代码:
    var Txt;
    function BindArray(obj1,obj2){
    var txtID = obj1;
    Txt = obj1;
    var ArrayName = obj2.concat();
    if(document.activeElement.id==txtID.id)
    {
    var TextValue = txtID.value;
    var i=0;
    var j=0;
    document.CeHui1.listmember.length = 0;
    for(i=0;i<ArrayName.length;i++)
    {
    if(ArrayName[i].toString().indexOf(TextValue,0)>-1)
    {
    var listvalue = ArrayName[i];
    document.CeHui1.listmember.add(new Option(listvalue,listvalue));
    }
    }
    }
    }function TextKeyDown(){
    if(event.keyCode==13)
    {
    document.CeHui1.listmember.focus();
    document.CeHui1.listmember.options(0).selected;
    return false;
    }
    }function listKeyDown(){
    if(event.keyCode==9)
    Txt.focus();
    }function listChange(obj){
    var listObj = obj(obj.selectedIndex).text;
    Txt.value = listObj;
    }<TD vAlign="top" align="left"><SELECT id="listmember" onkeydown="listKeyDown()" onchange="listChange(this)" size="8" name="listmember">
    <OPTION></OPTION>
    </SELECT></TD><TD colSpan="1">
    <INPUT  type="text" id="jflxrTxt" name="jflxrTxt" onpropertychange="BindArray(this,jsArray2)" onkeydown="return TextKeyDown()"></TD>.cs代码:
    public void SqlDataBind()
    {
    int m=0;
    int i=0;
    string [] selsql = new String [5];
    for(m=0;m<5;m++)
    selsql[m] = "select distinct ";
    selsql[0] += "委托单位 from yantu";
    selsql[1] += "工程名称地点 from yantu";
    selsql[2] += "甲方联系人 from yantu";
    selsql[3] += "院经手人 from yantu";
    selsql[4] += "工程负责人 from yantu";
    System.Data.SqlClient.SqlDataReader dreader;
    for(m=0;m<5;m++)
    {
    i=0;
    cehuiDa = new System.Data.SqlClient.SqlDataAdapter(selsql[m],cehuiConn);
    cehuiConn.Open();
    dreader = cehuiDa.SelectCommand.ExecuteReader();
    string [] Record = new string [ProCount];
    string FieldName = dreader.GetName(0);
    while(dreader.Read())
    {
    if(dreader[FieldName].ToString()!="")
    {
    Record[i] = dreader[FieldName].ToString();
    i++;
    }
    }
    dreader.Close();
    cehuiConn.Close();
    int j=0,k=0;
    string strJS;
    string strArray = "jsArray"+m;
    strJS="<script>var "+strArray+" = new Array("+i+");\n";
    for(j=0;j<i;j++)
    {
    if(Record[j].ToString()!="")
    {
    strJS+=strArray+"["+k+"]='"+Record[j].ToString()+"';\n";
    k++;
    }
    }
    strJS+="</script>";
    Response.Write(strJS);
    }
    }你自己好好的研究一下,我不多说了
      

  7.   

    你别盗版我给在asp.net版快里给你的答复,好了,你该给我分了
    我刚做完,可以给你一段代码,你自己研究吧!主要是在后台用C#将数据从数据库读出来,然后存到前台的数组里去,在前台对数组进行查询。.aspx代码:
    var Txt;
    function BindArray(obj1,obj2){
    var txtID = obj1;
    Txt = obj1;
    var ArrayName = obj2.concat();
    if(document.activeElement.id==txtID.id)
    {
    var TextValue = txtID.value;
    var i=0;
    var j=0;
    document.CeHui1.listmember.length = 0;
    for(i=0;i<ArrayName.length;i++)
    {
    if(ArrayName[i].toString().indexOf(TextValue,0)>-1)
    {
    var listvalue = ArrayName[i];
    document.CeHui1.listmember.add(new Option(listvalue,listvalue));
    }
    }
    }
    }function TextKeyDown(){
    if(event.keyCode==13)
    {
    document.CeHui1.listmember.focus();
    document.CeHui1.listmember.options(0).selected;
    return false;
    }
    }function listKeyDown(){
    if(event.keyCode==9)
    Txt.focus();
    }function listChange(obj){
    var listObj = obj(obj.selectedIndex).text;
    Txt.value = listObj;
    }<TD vAlign="top" align="left"><SELECT id="listmember" onkeydown="listKeyDown()" onchange="listChange(this)" size="8" name="listmember">
    <OPTION></OPTION>
    </SELECT></TD><TD colSpan="1">
    <INPUT  type="text" id="jflxrTxt" name="jflxrTxt" onpropertychange="BindArray(this,jsArray2)" onkeydown="return TextKeyDown()"></TD>.cs代码:
    public void SqlDataBind()
    {
    int m=0;
    int i=0;
    string [] selsql = new String [5];
    for(m=0;m<5;m++)
    selsql[m] = "select distinct ";
    selsql[0] += "委托单位 from yantu";
    selsql[1] += "工程名称地点 from yantu";
    selsql[2] += "甲方联系人 from yantu";
    selsql[3] += "院经手人 from yantu";
    selsql[4] += "工程负责人 from yantu";
    System.Data.SqlClient.SqlDataReader dreader;
    for(m=0;m<5;m++)
    {
    i=0;
    cehuiDa = new System.Data.SqlClient.SqlDataAdapter(selsql[m],cehuiConn);
    cehuiConn.Open();
    dreader = cehuiDa.SelectCommand.ExecuteReader();
    string [] Record = new string [ProCount];
    string FieldName = dreader.GetName(0);
    while(dreader.Read())
    {
    if(dreader[FieldName].ToString()!="")
    {
    Record[i] = dreader[FieldName].ToString();
    i++;
    }
    }
    dreader.Close();
    cehuiConn.Close();
    int j=0,k=0;
    string strJS;
    string strArray = "jsArray"+m;
    strJS="<script>var "+strArray+" = new Array("+i+");\n";
    for(j=0;j<i;j++)
    {
    if(Record[j].ToString()!="")
    {
    strJS+=strArray+"["+k+"]='"+Record[j].ToString()+"';\n";
    k++;
    }
    }
    strJS+="</script>";
    Response.Write(strJS);
    }
    }你自己好好的研究一下,我不多说了
      

  8.   

    不好意思,我没分数了,急着用,所以就想给自己一点,没想到不行,在这里向大家道歉,更要对minlove99表示感谢