为 Html 的 Select 加一个提示语和输入方法

原创 2004年03月31日 11:49:00

<Html>
<Head>
<SCRIPT LANGUAGE="JavaScript">
<!--
//定义 select 原值
var oldValue,oldText;
//select下拉框的onkeydown事件,修改下拉框的值
function catch_keydown(sel)
{
 switch(event.keyCode)
 {
  case 13: //回车键
   event.returnValue = false;
   break;
  case 27: //Esc键
   sel.options[sel.selectedIndex].text = oldText;
   sel.options[sel.selectedIndex].value = oldValue;
   event.returnValue = false;
   break;
  case 8:  //空格健
   var s = sel.options[sel.selectedIndex].text;
   s = s.substr(0,s.length-1);
   if (sel.options[sel.selectedIndex].value==sel.options[sel.selectedIndex].text)
   {
    sel.options[sel.selectedIndex].value=s;
    sel.options[sel.selectedIndex].text=s;
   }
   event.returnValue = false;
   break;
 }
 if (!event.returnValue && sel.onchange)
  sel.onchange(sel)
}

//select下拉框的onkeypress事件,修改下拉框的值
function catch_press(sel){
if(sel.selectedIndex>=0){
 var s = sel.options[sel.selectedIndex].text + String.fromCharCode(event.keyCode);
 if (sel.options[sel.selectedIndex].value==sel.options[sel.selectedIndex].text)
 {
  sel.options[sel.selectedIndex].value=s;
  sel.options[sel.selectedIndex].text=s;
 }
 event.returnValue = false;
 if (!event.returnValue && sel.onchange)
  sel.onchange(sel)
 }
}

//select下拉框的onfocus事件,保存下拉框原来的值
function catch_focus(sel) {
 oldText = sel.options[sel.selectedIndex].value;
 oldValue = sel.options[sel.selectedIndex].value;
}

//恢复select下拉列表当前选中的值
function LoadSelect(obj,value)
{
 for (var i=0; i< obj.options.length; i++)
  if (obj.options[i].value == value)
  {
   obj.selectedIndex = i;
   break;
  }
}

//select 选择框鼠标上移时提示选择的内容
function selMouseOver(obj)
{
 with (document.all.div_hint)
 {
  innerText = obj.options[obj.selectedIndex].text;
  if (innerText.length > 0)
  {
   innerText = " " + innerText + "  ";
   style.display = "block";
   style.left = event.clientX + 16;
   style.top = event.clientY;
  }
 }
}

//select 选择框鼠标移开时消失
function selMouseOut(obj)
{
 with (document.all.div_hint)
 {
  style.display = "none"
 }
}
//-->
</SCRIPT>
</Head>
<Body>
<!--调用-->
<select style='width:130px;z-index:-1' name='tmpSel' onmouseover=selMouseOver(this) onmouseout=selMouseOut(this) onkeydown=catch_keydown(this) onkeypress=catch_press(this) onfocus=catch_focus(this)>
 <option value=''></option>
</select>

<!--提示块-->
<div id=div_hint style="font-size:12px;color:red;display:none;position:absolute; z-index:2; top:200;background-color: #F7F7F7; layer-background-color: #0099FF; border: 1px #9c9c9c solid;filter:Alpha(style=0,opacity=80,finishOpacity=100);"></div>
</Body>
</Html>

Select2使用实例——很好用的下拉提示选择框!

这几天一直的寻找能把select和sugget结合起来使用的例子,然后就看到了这个,发现真的很不错,它支持下拉的直接选择,也支持在下拉内容中输入过滤。...
  • Evankaka
  • Evankaka
  • 2015年12月06日 22:05
  • 16105

html中select显示非option的文字:做下拉框的时候用这些文字当提示

在用select做下拉框的时候,往往在select标签左边的框里写一些提示,如“请选择年份等”,事例代码如下: 请选择年份 2010 20...
  • qq_15167261
  • qq_15167261
  • 2015年07月11日 20:58
  • 15148

html select下拉框上显示空的实现方法

在之前的博文中, 我们讨论了可编辑的html下拉框的间接实现, 在本文中, 我们来看看如果将html的下拉框显示为空白。         先看代码: 1 2 ...
  • stpeace
  • stpeace
  • 2016年03月06日 22:23
  • 8939

用原生HTML5控件实现输入框自动提示(下拉列表补全)功能

转自:http://www.cnblogs.com/Chen-XiaoJun/articles/5839335.html 元素介绍 想象一下我们想要用户输入一个字符串,例如他们的名字,我们...
  • zgrkaka
  • zgrkaka
  • 2017年06月05日 16:00
  • 3949

带下拉列表提示语的TextView

public class HintTextView extends Activity { private AutoCompleteTextView autoCompleteTextView; ...
  • SkySmile_
  • SkySmile_
  • 2017年12月13日 17:24
  • 114

select下拉列表提示title添加

在我们做项目的过程中可能有时候列表的宽度是一定的,这时候我们的列表内容可能不能从列表的窗口中完全看到,此时就需要给列表加一下title,当鼠标悬浮在select列表的上方时就能够看到所有的文本。这个功...
  • zhanglujie2008
  • zhanglujie2008
  • 2013年04月04日 17:24
  • 1682

SELECT语句常用字句的用法

SELECT语句的完整语法为:  SELECT[ALL|DISTINCT|DISTINCTROW|TOP]  {*|talbe.*|[table.]field1[AS alias1][,[tabl...
  • foreverhuylee
  • foreverhuylee
  • 2014年06月06日 10:14
  • 3597

html text加提示语

  • markchiu
  • markchiu
  • 2016年05月24日 14:21
  • 1253

为Html的Select加一个输入的方法

xieyj(原作)       //定义 select 原值  var oldValue,oldText;  //select下拉框的onkeydown事件,修改下拉框的值  function cat...
  • alan3258
  • alan3258
  • 2008年05月27日 13:41
  • 316

html的select加入可输入文本

function cmbChange() {    var cmbnoText = document.getElementById("cmbnoText");    var cmbno = doc...
  • weisg81
  • weisg81
  • 2015年05月19日 21:40
  • 1202
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:为 Html 的 Select 加一个提示语和输入方法
举报原因:
原因补充:

(最多只允许输入30个字)