Редактируемый раскрывающаяся коробка - HTML
Кода -копия выглядит следующим образом:
<div style = "позиция: относительно;">
<select onchange = "document.getElementById ('input'). value = this.value">
<option value = "class a"> class a </option>
<option value = "class b"> класс B </option>
<option value = "class c"> class c </option>
<option value = "class D"> класс D </option>
</select>
<input id = "input" name = "input" style = "Положение: Absolute; ширина: 99px; высота: 16px; слева: 1px; top: 2px; пограничный боттер: 0px; граница правая: 0px; граница-лето: 0px; граница-top: 0px;">
</div>
Редактируемый выпадающий бокс-JS
Кода -копия выглядит следующим образом:
<html>
<голова>
<meta name = "Generator" Content = "Microsoft FrontPage 5.0">
<meta name = "progid" content = "frontpage.editor.document">
<meta http-equiv = "content-type" content = "text/html; charset = gb2312">
<title> редактируемое раскрывающееся коробка </title>
</head>
<тело>
<Table style = "Border: 2px Overset; фоновый цвет:#d2e8ff" align = "center">
<tr>
<td align = "center">
<select name = "fason">
<option value = "редактируемое раскрывающееся коробка"> редактируемое раскрывающееся ящик </option>
<option value = "Автор"> Автор </option>
</select>
</td>
</tr>
</table>
<script language = "javascript">
Функция combox (obj, select) {
this.obj = obj
this.name = select;
this.select = document.getElementsbyname (select) [0];
/*Раскрывающаяся коробка, которая будет преобразована*/
}
/*Инициализировать объект*/
combox.prototype.init = function () {
var inputbox = "<input name = 'combox _"+this.name+"' onchange = '"+this.obj+". Найти ()'"
inputbox+= "style = 'position: absolute; width:"+(this.select.offsetwidth-16)+"; height:"+this.select.offsetheight+"; слева:"+getl (this.select)+"; top:"+gett (this.select)+">"
document.write (inputbox)
с (this.select.style) {
слева = getl (this.select)
top = gett (this.select)
положение = "абсолютное"
clip = "rect (0"+(this.select.offsetwidth)+""+this.select.offsetheight+""+(this.select.offsetwidth-18)+")"
/*Вырезать сглаженную коробку*/
}
this.select.onchange = новая функция (this.obj+". Change ()")
this.change ()
}
/*Заканчивается инициализацией*/
////////////// Object event definition//////////
combox.prototype.find = function () {
/*Когда значение ввода ищет, раскрывающийся путь будет автоматически расположен*/
var inputbox = document.getElementsbyname ("combox _"+this.name) [0]
с (this.select) {
для (i = 0; i <options.length; i ++)
if (options [i] .text.indexof (inputbox.value) == 0) {
selectedIndex = i
this.change ();
перерыв;
}
}
}
combox.prototype.change = function () {
/*Определите событие OnChange выпадающей коробки*/
var inputbox = document.getElementsbyname ("combox _"+this.name) [0]
inputbox.value = this.select.options [this.select.selectedIndex] .Text;
с (inputbox) {select (); Focus ()};
}
//////////////////////////////////////////////////////////
/*Функция общего позиционирования (получить абсолютные координаты управления)*/
функция getl (e) {
var l = e.offsetleft;
while (e = e.offsetparent) l+= e.offsetleft;
Возврат l
}
функция gett (e) {
var t = e.offsettop;
while (e = e.offsetparent) t+= e.offsettop;
Возврат t
}
/*Заканчивать*/
</script>
<script language = "javascript">
var a = new combox ("a", "fason")
a.init ()
</script>
</body>
</html>