如何实现文本框显示内容随下拉列表框联动

时间:2021-04-14 10:08:41
比如:数据表如下:
ID  name  age 
1   小明     15
2   小刚     16

下拉列表框:
id:
<select name="id">
.......循坏开始
<option value="<%=rs("id")%>"><%=rs("id")%></option>
.......循环结束
</select>

文本框:
姓名:<input type="text" name="name">
年龄:<input type="text" name="age">

现在想实现:当ID下拉列表框改变时,“姓名”、“年龄”文本框显示数据表中的相应数值。请各位高手不吝赐教,在此谢过了!

3 个解决方案

#1


<script type="text/javascript" src="http://www.aspbc.com/js/jquery.js"></script>
<script>
$(function(){
$("[name='id']").change(function(){
var a = $(this).find("option:selected").text();
var b = $(this).find("option:selected").val();
$("[name='name']").val(a);
$("[name='age']").val(b);
});
});
</script>

#2


<script type="text/javascript" src="http://www.aspbc.com/js/jquery.js"></script>
<script>
$(function(){
$("[name='id']").change(function(){
var a = $(this).find("option:selected").text();
var b = $(this).find("option:selected").val();
$("[name='name']").val(a);
$("[name='age']").val(b);
});
});
</script>

<select name="id">
<option value="15">小明</option>
<option value="16">小刚</option>
</select>

文本框:
姓名:<input type="text" name="name">
年龄:<input type="text" name="age">

#3


传统的获取下拉列表选中项值是把select 中option对象的value取出来,然后通过innerText赋值给文本框,这样每次选取,值只能跟选取的内容或值相同,而且只能有一个。如果值不相同或想实现取多值,比如选择列表中列出的是某人的姓名,当选择了某人时,怎样将此人的单位和电话号码显示到下面的文本框中?本文实现的就是这样一个功能。代码很简单,就是通过自定义表单属性来保存联系人的单位和电话值,当下拉列表发生改变时,再将电话和单位赋给文本框,通过这种方式,可实现多项数据的传递。

<%数据库连接%>

联系人:
<select id="dwname" name="dwname" onchange="dwcontact.value=this.options[dwname.selectedIndex].dw;dwphone.value=this.options[dwname.selectedIndex].dh;"> 
<option value="0">请选择联系人</option> 
<% 
do while not rs.eof 
Response.Write "<option value="&rs("id")&" dw='"&rs("单位")&"' dh='"&rs("电话")&"'> "&rs("联系人")&" </option> " & vbCrLf 
rs.movenext 
loop 
%> 
</select> 
<br><br> 
单位: 
<input name="dwcontact" id="dwcontact" type="text" size="20" value="">
<br> 
电话: 
<input name="dwphone" id="dwphone" type="text" size="20" value="">

#1


<script type="text/javascript" src="http://www.aspbc.com/js/jquery.js"></script>
<script>
$(function(){
$("[name='id']").change(function(){
var a = $(this).find("option:selected").text();
var b = $(this).find("option:selected").val();
$("[name='name']").val(a);
$("[name='age']").val(b);
});
});
</script>

#2


<script type="text/javascript" src="http://www.aspbc.com/js/jquery.js"></script>
<script>
$(function(){
$("[name='id']").change(function(){
var a = $(this).find("option:selected").text();
var b = $(this).find("option:selected").val();
$("[name='name']").val(a);
$("[name='age']").val(b);
});
});
</script>

<select name="id">
<option value="15">小明</option>
<option value="16">小刚</option>
</select>

文本框:
姓名:<input type="text" name="name">
年龄:<input type="text" name="age">

#3


传统的获取下拉列表选中项值是把select 中option对象的value取出来,然后通过innerText赋值给文本框,这样每次选取,值只能跟选取的内容或值相同,而且只能有一个。如果值不相同或想实现取多值,比如选择列表中列出的是某人的姓名,当选择了某人时,怎样将此人的单位和电话号码显示到下面的文本框中?本文实现的就是这样一个功能。代码很简单,就是通过自定义表单属性来保存联系人的单位和电话值,当下拉列表发生改变时,再将电话和单位赋给文本框,通过这种方式,可实现多项数据的传递。

<%数据库连接%>

联系人:
<select id="dwname" name="dwname" onchange="dwcontact.value=this.options[dwname.selectedIndex].dw;dwphone.value=this.options[dwname.selectedIndex].dh;"> 
<option value="0">请选择联系人</option> 
<% 
do while not rs.eof 
Response.Write "<option value="&rs("id")&" dw='"&rs("单位")&"' dh='"&rs("电话")&"'> "&rs("联系人")&" </option> " & vbCrLf 
rs.movenext 
loop 
%> 
</select> 
<br><br> 
单位: 
<input name="dwcontact" id="dwcontact" type="text" size="20" value="">
<br> 
电话: 
<input name="dwphone" id="dwphone" type="text" size="20" value="">