下拉框的显示:点开以后,宽度变长,显示更长的内容. 参考:可以自己改一下:http://lucky.myrice.com/temp/select.html 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sorry:参考:可以自己改一下:http://lucky.myrice.com/temp/select.htm <html><body><select style=width:100 onchange="this.style.width=this.options[this.selectedIndex].text.length*7+25"><option>12345<option>1234567890<option>123456789098765<option>1234567890987654321</select></body></html> 似乎是没有办法实现的,只有通过<div>自己做select了。 是指鼠标移到option上的时候就改变,鼠标移开又要改回去呀。另外,option能响应什么事件吗? to flylyke(爱就像英雄莫问出处) :你那个功能也不错,但是,不是我想要的.你的是选定一个了以后,长度变得和选定的内容的长度一样了,我是希望,显示的时候,长度总是那么长,只有点开下拉以后,长度变大,把所有的信息都能显示出来,选定以后,长度还是指定的长度. to tian_cookie(刘小天):建议不错,但是想想还是不是最好,第一,有延迟,第二,界面可能不好看.当然,能实现的话,也可以是一个选择.高手们:我的javaScript不是很好,希望大家继续帮忙!谢谢谢谢! 想到一个替代的方法:显示一个text,屏蔽掉键盘输入,当得到焦点的时候,在它下面显示一个table,table中列出所有的选择项,当选中其中一个的时候,将table隐藏起来,将选中的信息赋给text,这样,table的大小是可以自己定义,就可以操过text的长度了,这样,也不错哦.但是,我不会写这些代码,希望高手们帮助.当然,text用select最好.在线等待..... <html><body><select style=width:100 onclick="this.style.width='';" onblur=this.style.width=100><option>12345<option>1234567890<option>123456789098765<option>1234567890987654321</select></body></html>就是有延迟的那一个了,但是还凑合能用 <style>.optionForSel {font-size:9pt}</style><table cellpadding="0" cellspacing="0" border="0" width="300"> <tr> <td id="selectLength" width="100%" style="height:20px;padding:0px;border:2px inset #404040;border-right:0px;border-bottom:1px solid #D4D0C8;font-size:9pt;"> <div id="selectedValue" style="padding:2px;border:0px;width:100%;height:20px;font-size:9pt;vertical-align:bottom"></div> </td> <td width="20" style="height:20px;padding:0px;border-top:2px inset #404040;border-left:0px;border-right:1px solid #D4D0C8;border-bottom:1px solid #D4D0C8;font-size:9pt"> <input type=button style="width:20px;height:20px;font-family:Webdings" value="6" id="mm" onclick="mm_Click()" align="absmiddle"> </td> </tr></table><div id="dropdownOption" style="position:absolute;visibility:hidden;width:00%;border:1px solid #080808;z-index:1000;background-color:#FFFFFF"> <table cellpadding="0" cellspacing="1" class="optionForSel" bgcolor="White"> <tr onmouseover="this.style.backgroundColor='#0099ff'" onmouseout="this.style.backgroundColor=''"> <td onclick="document.all.selectedValue.innerText=this.innerText"> <nobr> <a href="http://lucky.myrice.com">Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1</a> </nobr> </td> </tr> <tr> <td onmouseover="this.style.backgroundColor='#0099ff'" onmouseout="this.style.backgroundColor=''"onclick="document.all.selectedValue.innerText=this.innerText"><nobr> <a href="http://lucky.myrice.com">测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字</a> </nobr> </td> </tr> </table></div><script>function mm_Click(){ if(document.all.dropdownOption.style.visibility == 'visible') document.all.dropdownOption.style.visibility='hidden' else document.all.dropdownOption.style.visibility='visible'}function init(){document.all.dropdownOption.style.width = document.all.selectLength.clientWidth + 22;document.all.selectedValue.contentEditable = true;var strTop = 0;var strLeft = 0;var e1 = document.all.selectLength;while(e1.tagName != "BODY"){strTop += e1.offsetTopstrLeft += e1.offsetLefte1 = e1.offsetParent}document.all.dropdownOption.style.top = String(strTop + 24) + "px";document.all.dropdownOption.style.left = String(strLeft) + "px";}function clickE(){if(window.event.srcElement.id !='mm')document.all.dropdownOption.style.visibility='hidden';}document.onclick = clickEwindow.onload = init</script><br><br><input onclick="alert(document.all.selectedValue.innerText)" type="button" value="得到选中的值"> 不知道这个效果如何?<span><input name=iData size=10><input type=button onclick=showSel(true) value=v><br><select id=qswh size=10 style=position:absolute;display:none onchange=selText(iData)><option>1<option>12<option>123<option>1234<option>12345<option>123456<option>1234567<option>12345678<option>123456789<option>1234567890<option>12345678909<option>123456789098<option>1234567890987<option>12345678909876<option>123456789098765<option>1234567890987654<option>12345678909876543<option>123456789098765432<option>1234567890987654321</select></span>ttt<script>function document.onclick(){showSel(false)}function showSel(flag){document.all.qswh.style.display=(flag?"block":"none")window.event.cancelBubble=true;}function selText(obj){obj.value=(document.all.qswh.options[document.all.qswh.selectedIndex].text)//showSel(false)}</script> 感谢以上几位高手的帮助,谢谢你们!JavaScript分区是我到过的最好的分区之一!我会常来这里的. 图片上传时预览的问题???????????? 发现使用JS操作外部样式表的局限性 在TD中动态添加INPUT后无法获得该INPUT的值?? 两个字符串时间差怎么计算? javascript有没有方法执行一段字符串函数(该字符串是个函数) 时间显示并移动(急) 请指教JS源码?动态菜单。 怎样限制选中复选框的数量? 难题:想直接引用其它网站上的div层,不知如何实现??高手请教 实现目标另存为的方法--注意不是网页另存为! 如何用在页面用QuickTime播放MIDI. 诶呀妈啊,这到底是咋回事啊?
参考:可以自己改一下:
http://lucky.myrice.com/temp/select.htm
<body>
<select style=width:100 onchange="this.style.width=this.options[this.selectedIndex].text.length*7+25">
<option>12345
<option>1234567890
<option>123456789098765
<option>1234567890987654321
</select>
</body>
</html>
你那个功能也不错,但是,不是我想要的.
你的是选定一个了以后,长度变得和选定的内容的长度一样了,我是希望,显示的时候,长度总是那么长,只有点开下拉以后,长度变大,把所有的信息都能显示出来,选定以后,长度还是指定的长度.
建议不错,但是想想还是不是最好,第一,有延迟,第二,界面可能不好看.
当然,能实现的话,也可以是一个选择.高手们:
我的javaScript不是很好,希望大家继续帮忙!
谢谢谢谢!
但是,我不会写这些代码,希望高手们帮助.
当然,text用select最好.在线等待.....
<body>
<select style=width:100 onclick="this.style.width='';" onblur=this.style.width=100>
<option>12345
<option>1234567890
<option>123456789098765
<option>1234567890987654321
</select>
</body>
</html>
就是有延迟的那一个了,但是还凑合能用
<style>
.optionForSel {font-size:9pt}
</style><table cellpadding="0" cellspacing="0" border="0" width="300">
<tr>
<td id="selectLength" width="100%" style="height:20px;padding:0px;border:2px inset #404040;border-right:0px;border-bottom:1px solid #D4D0C8;font-size:9pt;">
<div id="selectedValue" style="padding:2px;border:0px;width:100%;height:20px;font-size:9pt;vertical-align:bottom"></div>
</td>
<td width="20" style="height:20px;padding:0px;border-top:2px inset #404040;border-left:0px;border-right:1px solid #D4D0C8;border-bottom:1px solid #D4D0C8;font-size:9pt">
<input type=button style="width:20px;height:20px;font-family:Webdings" value="6" id="mm" onclick="mm_Click()" align="absmiddle">
</td>
</tr>
</table>
<div id="dropdownOption" style="position:absolute;visibility:hidden;width:00%;border:1px solid #080808;z-index:1000;background-color:#FFFFFF">
<table cellpadding="0" cellspacing="1" class="optionForSel" bgcolor="White">
<tr onmouseover="this.style.backgroundColor='#0099ff'" onmouseout="this.style.backgroundColor=''">
<td onclick="document.all.selectedValue.innerText=this.innerText">
<nobr>
<a href="http://lucky.myrice.com">Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1Visit1</a>
</nobr>
</td>
</tr>
<tr>
<td onmouseover="this.style.backgroundColor='#0099ff'" onmouseout="this.style.backgroundColor=''"onclick="document.all.selectedValue.innerText=this.innerText"><nobr>
<a href="http://lucky.myrice.com">测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字</a>
</nobr>
</td>
</tr>
</table>
</div><script>
function mm_Click()
{
if(document.all.dropdownOption.style.visibility == 'visible')
document.all.dropdownOption.style.visibility='hidden'
else
document.all.dropdownOption.style.visibility='visible'
}
function init(){
document.all.dropdownOption.style.width = document.all.selectLength.clientWidth + 22;
document.all.selectedValue.contentEditable = true;
var strTop = 0;
var strLeft = 0;
var e1 = document.all.selectLength;
while(e1.tagName != "BODY")
{
strTop += e1.offsetTop
strLeft += e1.offsetLeft
e1 = e1.offsetParent
}
document.all.dropdownOption.style.top = String(strTop + 24) + "px";
document.all.dropdownOption.style.left = String(strLeft) + "px";
}function clickE()
{
if(window.event.srcElement.id !='mm')
document.all.dropdownOption.style.visibility='hidden';
}document.onclick = clickE
window.onload = init
</script>
<br>
<br>
<input onclick="alert(document.all.selectedValue.innerText)" type="button" value="得到选中的值">
<span>
<input name=iData size=10><input type=button onclick=showSel(true) value=v>
<br><select id=qswh size=10 style=position:absolute;display:none onchange=selText(iData)>
<option>1
<option>12
<option>123
<option>1234
<option>12345
<option>123456
<option>1234567
<option>12345678
<option>123456789
<option>1234567890
<option>12345678909
<option>123456789098
<option>1234567890987
<option>12345678909876
<option>123456789098765
<option>1234567890987654
<option>12345678909876543
<option>123456789098765432
<option>1234567890987654321
</select>
</span>ttt
<script>
function document.onclick(){
showSel(false)
}
function showSel(flag){
document.all.qswh.style.display=(flag?"block":"none")
window.event.cancelBubble=true;
}
function selText(obj){
obj.value=(document.all.qswh.options[document.all.qswh.selectedIndex].text)
//showSel(false)
}
</script>
JavaScript分区是我到过的最好的分区之一!
我会常来这里的.