try<select name="select" size="7" onChange="test(this.options[this.selectedIndex].text)">
or<script language="JavaScript">
function test(val){var npos = val.indexOf(",");
if (npos >=0)
val = val.substring(npos+1);var c=document.getElementsByName('box'); for(i=0;i<c.length;i++)
c[i].checked=val.indexOf(c[i].value)!=-1;}
</script>>>>如何把把select里的value值转为数组
var list = val.split(/,/);
or<script language="JavaScript">
function test(val){var npos = val.indexOf(",");
if (npos >=0)
val = val.substring(npos+1);var c=document.getElementsByName('box'); for(i=0;i<c.length;i++)
c[i].checked=val.indexOf(c[i].value)!=-1;}
</script>>>>如何把把select里的value值转为数组
var list = val.split(/,/);
function test(val){
var npos = val.indexOf(",");
if (npos >=0) val = val.substring(npos+1);
var c = document.getElementsByName('box');
for(i=0;i<c.length;i++)c[i].checked=val.indexOf(c[i].value)!=-1;
}
</script><select name="select" size="7" onChange="test(value)">
<option value="1,1">1</option>
<option value="16,2">2</option>
<option value="1,3">3</option>
<option value="1,1,2">1,2</option>
<option value="1,1,3">1,3</option>
<option value="255,2,11">2,11</option>
</select>
1<input type="checkbox" name="box" value="1">
2<input type="checkbox" name="box" value="2">
3<input type="checkbox" name="box" value="3">
10<input type="checkbox" name="box" value="10">
11<input type="checkbox" name="box" value="11">
=================
代码及格式如上,按saucer朋友的方法出现BUG,select点选最后一项时checkbox选中错误
select点选2,11时,本应该只有value等于11和2和checkbox被置为选中.
但是现在value等于1的checkbox也会被置为选中.
function test(val){
var npos = val.indexOf(",");
if (npos >=0) val = val.substring(npos+1);
var valist = val.split(/,/);
var c = document.getElementsByName('box');
for(i=0;i<c.length;i++)
{
c[i].checked = false;
for (var j=0; j < valist.length; j++)
if (valist[j] == c[i].value)
{
c[i].checked = true;
break;
}
}
}
</script>