<select id='fruit' name="select" size=1 onclick="this.size==1&&this.size=5;">
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
<select id='fruit' name="select" size=1 onclick="this.size==1&&(this.size=5);">
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select> 将onclick换成onfoucs看一下
<select name=fruits size=3>
<option>Banana
<option selected>Apple
<option >Orange
<option>Peach
</select><p>
<input type=submit><input type=reset>
</form>不知道是不是你要的,你先看看吧。
<script language='javascript'>
function aaa()
{
var obj = document.getElementById("fruit");
obj.size=3;
obj.onchange = function(e)
{
obj.size = 1;
obj.blur();
}
return false;
}
</script>
<select id='fruit' name="select" onfocus="aaa();">
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
ie6不支持.
document.onclick=function(e){
e=e||event;
var obj=e.srcElement||e.target;
var o= document.getElementById("fruit");
if(obj==o){
if(o.size=="1")o.size=5;
else o.size=1;
}else o.size=1;
}
</script>
<select id='fruit' name="select" size="1" >
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
http://xa.photo.store.qq.com/rurl2=00d2deff70c1e9be93e3bdfd63626711738fd878975968e5641a13337e3f43683484f448ef66b72eacc14332abb0da5e5a6c202ac351d54e3761cf9037256bacf69cdd801b0f0a2b5207af531e9d4d78f28714fb
请会做的大哥帮忙下,谢谢
<input id="a" name="a" type="hidden" /><br>
<select id='fruit' name="select" onFocus="this.size=5;" onBlur="this.size=1" onChange="this.size=1;document.getElementById('a').focus();">
<option>1 </option>
<option>2 </option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
firefox和ie7是通过测试
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <script>
function f(sel1)
{
var sel2=document.getElementById('select2');
var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0;
var name =sel2.options[i].innerHTML;
var tmp=new Option(name,sel2.value);
sel1.options[0]=tmp;
sel2.style.display='inline';
sel1.style.width=sel2.offsetWidth;
sel2.focus();
}
function c(sel2)
{
var sel1=document.getElementById('select1');
var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0;
var name =sel2.options[i].innerHTML;
var temp=new Option(name,sel2.value);
sel1.options[0]=temp;
sel2.style.display="none";
}
</script>
</head>
<body>
<select id="select1" onFocus="f(this)">
<option>dhh</option>
</select><br>
<select id="select2" name="select" size="5" style="display:none;" onChange="c(this)" onBlur="this.style.display='none'">
<option>dhh </option>
<option>bbb</option>
<option>3 </option>
<option>4 </option>
<option>5 </option>
<option>6 </option>
<option>7 </option>
<option>8 </option>
<option>9 </option>
<option>10 </option>
</select>
</body>
</html>
http://xa.photo.store.qq.com/rurl2=ef31a1bff2005d5df3c802a45380809ad95f5b2171e2b3b9ad97ccb4cdb700b52d141e716c22b0d2b4ec4031b82002c9834d41ba4d519e4d97e9cce009691c81e0cf3c59cb4ba95d9dd2da387a59e025962b01c5
烦请29楼的大哥帮忙帮到底吧,可以帮我实现不要把这行增宽吗?谢谢哦
http://xa.photo.store.qq.com/rurl2=ef31a1bff2005d5df3c802a45380809ad95f5b2171e2b3b9ad97ccb4cdb700b52d141e716c22b0d2b4ec4031b82002c9834d41ba4d519e4d97e9cce009691c81e0cf3c59cb4ba95d9dd2da387a59e025962b01c5
烦请29楼的大哥帮忙帮到底吧,可以帮我实现不要把这行增宽吗?谢谢哦
因为是模拟效果,而且下面一个select是size=5
所以size=5这一部分没有办法跨div 或 table
在select2的style中加上 z-index:2; position:absolute;这两个属性 试试看
我工作也快1年了,这1年中虽然也学到了不少东东,可是感觉自己进步不大,我有个师兄,他工作近2年,他现在都已经是java方面的高手了。
由于我以前数学不是很理想,又因为自己是女生,我真怀疑,我是否不适合做研发的工作,哎,有时候觉得真是累啊……
{
var sel2=document.getElementById('select2');
var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0;
var name =sel2.options[i].innerHTML;
var tmp=new Option(name,sel2.value);
sel1.options[0]=tmp;
sel2.style.display='inline';
sel1.style.width=sel2.offsetWidth;
sel2.focus();
}
function c(sel2)
{
var sel1=document.getElementById('select1');
var i=sel2.selectedIndex>0 ?sel2.selectedIndex :0;
var name =sel2.options[i].innerHTML;
var temp=new Option(name,sel2.value);
sel1.options[0]=temp;
sel2.style.display="none"; }
function mv(serial_no) //移位
{
var i=document.frmCmd.elements["filter_id_"+serial_no].selectedIndex;
var m=document.frmCmd.elements["filter_id_"+serial_no].options[i].value;
//alert(m); //测试 m 值
//exit;
document.frmCmd.realAction.value = "mv";
document.frmCmd.id.value = serial_no; //旧id
document.frmCmd.new_id.value = m; //新id
document.frmCmd.submit();
}以下是html部分
<td width="6%" bgcolor="#FFFFFF">
<select id="select1" onFocus="f(this)">
<?php
$filter = &$config['filter']['rule'];
for($j=0; $j< count($filter); $j++)
{
echo '<option value="'.$j== $i.'"';
// if ($j == $i) echo " selected";
echo '> '.$j== $i.' </option>';
}
?>
</select> <br>
<select id="select2" name="filter_id_<?=$i?>" size="5" style="display:none;z-index:2; position:absolute;" onChange="c(this)" onBlur="this.style.display='none'" onchange="javascript:mv('<?=$i?>')">
<?php
$filter = &$config['filter']['rule'];
for($j=0; $j< count($filter); $j++)
{
echo '<option value="'.$j.'"';
if ($j == $i) echo " selected";
echo '> '.$j.' </option>';
//$filter_id = $filter[$i]['rule'];
//echo $filter_id;
}
?>
</select>
<!--
<select name="filter_id_<?=$i?>" onchange="javascript:mv('<?=$i?>')">
<?php
$filter = &$config['filter']['rule'];
for($j=0; $j< count($filter); $j++)
{
echo '<option value="'.$j.'"';
if ($j == $i) echo " selected";
echo '> '.$j.' </option>';
//$filter_id = $filter[$i]['rule'];
//echo $filter_id;
}
?>
</select>
-->
</td>
把mv和c函数写在一起,然后下面onchange再调用mv和c,代码怎么合成啊?合成之后我应该就能实现我的规则移动了吧?
35楼的高手,如果有时间的话,请帮忙帮到底吧,呵呵,非常感谢!!!
最近2天还要研究php代码编译,这周没有时间了,看你技术很高,所以暂时有点依赖的心里了,呵呵
首先你这样写onchange事件只会执行c,一个标签里不能写两个onchange
如果要执行两个函数可以这样写 onChange="c(this);mv('<?=i?>')"
也可以在c函数的最后调用mv
上面的方案是先调用c 如果要先调用mv 凋个位子就行了。。
并且下拉以后,点击下拉框,也会看到下拉的过程.
其实要是有时间的话,我想用文本框的标签实现公司说需要的功能呢,但是现在怀孕了,最近老是头疼,也不想思考,就只有交差式的完成任务了,也考虑着辞职呢,但是听说现在工作难找,所以正在犹豫中……