征求用最简单方法实现可以编辑、可以自动定位、可以拼音码感应、可以选择的下拉框(DropDownList 或 Select),具体情况看内
可以编辑:就是可以输入内容;
可以自动定位:就是当我输入“张”时,下面的下拉框要展开并且显示只显示第一个字为“张”的所有人员;当我在输入“张三”是,下面的下拉框要展开并且显示只显示前两个字为“张三”的所有人员;
可以拼音码感应:就是当我输入“y"时,下面的下拉框要展开并且显示第一个字的拼音为"y"的所有人员的名字;同上面的自动定位,只是一个输入的是”文字“,一个是”拼音码“
可以选择:就是下拉框的正常功能;
代码如下:
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<body MS_POSITIONING="GridLayout" onload="comboBox()">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<SELECT id="mySelect" style="Z-INDEX: 101; LEFT: 8px; WIDTH: 432px; POSITION: absolute; TOP: 8px"
name="mySelect" runat="server">
<OPTION selected></OPTION>
<option value="ycy_1">俞传尧</option>
<option value="clq_2">陈丽群</option>
<option value="csl_3">蔡松林</option>
<option value="lyq_4">梁亦秋</option>
<option value="wgy_5">王光远</option>
<option value="zzs_6">张子枢</option>
<option value="ckc_7">陈课程</option>
<option value="lqm_8">林秋美</option>
<option value="jys_9">江永森</option>
<option value="lxx_10">林孝祥</option>
<option value="wcz_11">王成章</option>
<option value="wh_12">韦红</option>
<option value="fm_13">傅明</option>
<option value="slm_14">石丽敏</option>
<option value="cxb_15">池晓勃</option>
<option value="cmy_16">陈敏瑜</option>
<option value="wkc_17">吴克昌</option>
<option value="lmq_18">卢明琪</option>
<option value="yj_19">杨隽</option>
<option value="hqq_20">胡青青</option>
<option value="lax_21">梁爱鲜</option>
<option value="zlp_22">郑若鹏</option>
<option value="cjf_23">陈樵峰</option>
<option value="wjh_24">王金伙</option>
<option value="cds_25">常德深</option>
<option value="ly_26">刘钰</option>
<option value="ljc_27">林建苍</option>
<option value="sb_28">宋波</option>
<option value="zzk_29">张祖康</option>
<option value="lgz_30">赖国专</option>
<option value="hys_31">黄雅椒</option>
<option value="hsr_32">黄圣荣</option>
<option value="xkx_33">许开醒</option>
<option value="ydj_34">于东江</option>
<option value="csm_35">陈生美</option>
<option value="ljm_36">李建民</option>
<option value="wgx_37">武国秀</option>
<option value="wcs_38">王常松</option>
<option value="sys_39">沈阳生</option>
<option value="ltt_40">刘通途</option>
<option value="czg_41">陈宗光</option>
<option value="zm_42">张敏</option>
<option value="yal_43">姚爱兰</option>
<option value="mjy_44">茅金焰</option>
<option value="xkf_45">许克付</option>
<option value="zkm_46">郑抗美</option>
<option value="hzc_47">黄增长</option>
<option value="czq_48">陈自强</option>
<option value="cjr_49">陈建荣</option>
<option value="hzx_50">冯振秀</option>
</SELECT>
</FONT>
</form>
</body>
</HTML>
各位朋友,分数不是问题,我要的是一个满意的答案!如果问题得到了完美解决,你要多少分,我另外开帖给。
E-Mail:[email protected]
MSN:[email protected]
其实,上面的功能我用JavaScript已经大部分实现,就还有一个”拼音码感应了“。如果解决了,大家留下一个信箱,或者我会上传到一个地方让大家下载!!!!
解释一点:在option 中的value = "ycy_1 ",ycy是拼音码,1是自动编号
可以编辑:就是可以输入内容;
可以自动定位:就是当我输入“张”时,下面的下拉框要展开并且显示只显示第一个字为“张”的所有人员;当我在输入“张三”是,下面的下拉框要展开并且显示只显示前两个字为“张三”的所有人员;
可以拼音码感应:就是当我输入“y"时,下面的下拉框要展开并且显示第一个字的拼音为"y"的所有人员的名字;同上面的自动定位,只是一个输入的是”文字“,一个是”拼音码“
可以选择:就是下拉框的正常功能;
代码如下:
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<body MS_POSITIONING="GridLayout" onload="comboBox()">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<SELECT id="mySelect" style="Z-INDEX: 101; LEFT: 8px; WIDTH: 432px; POSITION: absolute; TOP: 8px"
name="mySelect" runat="server">
<OPTION selected></OPTION>
<option value="ycy_1">俞传尧</option>
<option value="clq_2">陈丽群</option>
<option value="csl_3">蔡松林</option>
<option value="lyq_4">梁亦秋</option>
<option value="wgy_5">王光远</option>
<option value="zzs_6">张子枢</option>
<option value="ckc_7">陈课程</option>
<option value="lqm_8">林秋美</option>
<option value="jys_9">江永森</option>
<option value="lxx_10">林孝祥</option>
<option value="wcz_11">王成章</option>
<option value="wh_12">韦红</option>
<option value="fm_13">傅明</option>
<option value="slm_14">石丽敏</option>
<option value="cxb_15">池晓勃</option>
<option value="cmy_16">陈敏瑜</option>
<option value="wkc_17">吴克昌</option>
<option value="lmq_18">卢明琪</option>
<option value="yj_19">杨隽</option>
<option value="hqq_20">胡青青</option>
<option value="lax_21">梁爱鲜</option>
<option value="zlp_22">郑若鹏</option>
<option value="cjf_23">陈樵峰</option>
<option value="wjh_24">王金伙</option>
<option value="cds_25">常德深</option>
<option value="ly_26">刘钰</option>
<option value="ljc_27">林建苍</option>
<option value="sb_28">宋波</option>
<option value="zzk_29">张祖康</option>
<option value="lgz_30">赖国专</option>
<option value="hys_31">黄雅椒</option>
<option value="hsr_32">黄圣荣</option>
<option value="xkx_33">许开醒</option>
<option value="ydj_34">于东江</option>
<option value="csm_35">陈生美</option>
<option value="ljm_36">李建民</option>
<option value="wgx_37">武国秀</option>
<option value="wcs_38">王常松</option>
<option value="sys_39">沈阳生</option>
<option value="ltt_40">刘通途</option>
<option value="czg_41">陈宗光</option>
<option value="zm_42">张敏</option>
<option value="yal_43">姚爱兰</option>
<option value="mjy_44">茅金焰</option>
<option value="xkf_45">许克付</option>
<option value="zkm_46">郑抗美</option>
<option value="hzc_47">黄增长</option>
<option value="czq_48">陈自强</option>
<option value="cjr_49">陈建荣</option>
<option value="hzx_50">冯振秀</option>
</SELECT>
</FONT>
</form>
</body>
</HTML>
各位朋友,分数不是问题,我要的是一个满意的答案!如果问题得到了完美解决,你要多少分,我另外开帖给。
E-Mail:[email protected]
MSN:[email protected]
其实,上面的功能我用JavaScript已经大部分实现,就还有一个”拼音码感应了“。如果解决了,大家留下一个信箱,或者我会上传到一个地方让大家下载!!!!
解释一点:在option 中的value = "ycy_1 ",ycy是拼音码,1是自动编号
http://community.csdn.net/Expert/topic/3813/3813389.xml?temp=.4019739
http://blog.csdn.net/muse2008/archive/2004/11/30/199604.aspx
1、可以编辑:正常的select一般是不可以输入内容的,不过可以使用障眼法,使用文本框+下拉框的形式,文本框放到层上,覆盖掉下下拉框中的文本框。文本框和下拉框使用JavaScript代码进行实时同步更新。我曾用这种方法实现了文件域的动态赋值。
2、可以自动定位:使用JavaScript写一个函数,当用户按键并且文本框输入的值改变时,则对下拉框里的选项执行搜索,找到则设为下拉框的索引,并触发单击事件以显示列表。 3、拼音码感应:使用拼音码的话,我想对下拉框的排序有要求,在生成数据前应该是按拼音字母排序的,不然感应后如果不重新排序的话,不太可能显示所有这个拼音的选项。实现感应该的方法我想应该是把中文转换成拼音的形式,然后再执行搜索定位至于中文如何转换成拼音,由于没研究过,不太清楚,你可以去网上搜索下这方面的资料。
4、可以选择:使用文本框+下拉框的组合话,下拉框本身就有选择项能了要达到下拉框的一样的目的,只要在下拉框的值改变时,把相应的值赋给文本就行了。这样看起来就像一个下拉框一样。
//在顶部添加:
using System.Data.SqlClient;//设置comboBox1的DropDownStyle为Simple//将textBox1调整到和comboBox1上部一样大,放在comboBox1上部//添加如下代码:
private void textBox1_TextChanged_1(object sender, System.EventArgs e)
{
comboBox1.Items.Clear ();
comboBox1.SelectionStart =textBox1.Text .Length ; int itemTotal=0;//共有多少条记录
sqlConn = new SqlConnection ("server=数据库服务器名;database=northwind;uid=sa;pwd="); sqlConn.Open(); sqlCmd = new SqlCommand("SELECT productname FROM products where left(productname,"+textBox1.Text .Length .ToString ()+") ='"+textBox1.Text +"'",sqlConn);
////////////////////填充comboBox1(开始)/////////////////////////////////
sqlDataReader=sqlCmd.ExecuteReader ();
for(int i=0;;i++)
{
if(sqlDataReader.Read ()==false)
break;
else
{
if(i==0)
{
item[0]=sqlDataReader.GetValue (0).ToString ();
itemTotal++;
}
else
{
if(sqlDataReader.GetValue (0).ToString ()!=item[itemTotal-1])
{
itemTotal++;
item[itemTotal-1]=sqlDataReader.GetValue (0).ToString ();
}
}
}
}
for(int i=1;i<=itemTotal;i++)
comboBox1.Items.AddRange(new object[] {item[i-1]});
////////////////////填充comboBox1(结束)/////////////////////////////////
} private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
textBox1.Text =comboBox1.Text ;
}