建议将数据在客户端执行,如下
<form>
<select name=abc onchange="show(this.value)">
<option value="a">蔬菜类</option>
<option value="b">游戏类</option>
<option value="c">家电类</option>
<option value="d">日用品类</option>
</select>
<div id=demo>
</div>
<input type=submit value=submit>
</form>
<script>
var arr=[],i=0;
arr[i++]="102 苹果 1 a".split(" ")
arr[i++]="103 梨子 1.4 a".split(" ")
arr[i++]="100 电视机 1000 c".split(" ")
arr[i++]="101 收音机 20 c".split(" ")
//数据库里其他数据
function show(v){
var ret="",i;
for(i=0;i<arr.length;i++){
if(arr[i][3]==v)
ret+="<input type=checkbox value="+arr[i][0]+" name=good>"+arr[i][1]+" "
else if(ret!="")break;
}
document.all.demo.innerHTML=ret
}
document.all.abc.selectedIndex=-1
</script>
<form>
<select name=abc onchange="show(this.value)">
<option value="a">蔬菜类</option>
<option value="b">游戏类</option>
<option value="c">家电类</option>
<option value="d">日用品类</option>
</select>
<div id=demo>
</div>
<input type=submit value=submit>
</form>
<script>
var arr=[],i=0;
arr[i++]="102 苹果 1 a".split(" ")
arr[i++]="103 梨子 1.4 a".split(" ")
arr[i++]="100 电视机 1000 c".split(" ")
arr[i++]="101 收音机 20 c".split(" ")
//数据库里其他数据
function show(v){
var ret="",i;
for(i=0;i<arr.length;i++){
if(arr[i][3]==v)
ret+="<input type=checkbox value="+arr[i][0]+" name=good>"+arr[i][1]+" "
else if(ret!="")break;
}
document.all.demo.innerHTML=ret
}
document.all.abc.selectedIndex=-1
</script>
解决方案 »
- ExtJs grid 导出问题
- 忘CSDN好汉们解救我脱离苦海--getElementById ("xxx")为空或不是对象。
- alert后如何让光标回到原来的input里
- 求在100范围内 任何连续的一段数据组
- 请教高手,javascript自定义对象方法的问题
- JScript数组加法请教
- 如何实现鼠标放到滚动条下边的三角上滚动条自动下滑,让上边三角滚动条自动上滑?
- objID.selectedIndex=1;//document.getElementById ("hdnFenQu").value 为什么这个语句不起作用
- tree1.oncheck=function()这种形式是什么意思?
- 大家看下面的代码有问题吗?
- 刷新问题:IE5和IE6执行结果不同?
- 一个弹出对话框的问题恳请帮助在线等待!
在这一句话中加入一个checkbox点击事件好象不行;
ret+="<input type=checkbox value="+arr[i][0]+" name=good onclick=return checkvalue();>"+arr[i][1]+""
http://lucky.myrice.com/temp/select.html
<select name=abc onchange="show(this.value)">
<option value="a">蔬菜类</option>
<option value="b">游戏类</option>
<option value="c">家电类</option>
<option value="d">日用品类</option>
</select>
<div id=demo>
</div>
<input type=submit value=submit>
</form>
<script>
var arr=[],i=0;
arr[i++]="102 苹果 1 a".split(" ")
arr[i++]="103 梨子 1.4 a".split(" ")
arr[i++]="100 电视机 1000 c".split(" ")
arr[i++]="101 收音机 20 c".split(" ")
//数据库里其他数据
function show(v){
var ret="",i;
for(i=0;i<arr.length;i++){
if(arr[i][3]==v)
ret+="<input type=checkbox value="+arr[i][0]+" name=good onclick='return checkvalue();'>"+arr[i][1]+" "
else if(ret!="")break;
}
document.all.demo.innerHTML=ret
}
document.all.abc.selectedIndex=-1function checkvalue(){
alert(window.event.srcElement.value)
return true
}
</script>
即arr[0][1]是arr[0][2]的值,而arr[0][2]="";
arr[i][j]其中i>0的数又是正常的;现在真没得折了;
如果这一句不屏蔽,哪么,满足要求的记录根本就没有提完;
秋水姑娘;
这个2维数组始终有问题呀;continue;
呵呵;
order by 类别else if(ret!="")break;
为的是优化程序出错的原因,可能是有字段为空
你先看生成的代码是否正确?
{ i=0;
<% ResultSet rr=mybeans.executeQuery("select * from user_info order by style");
while(rr.next())
{
String pid=rr.getString("userid");
String pname=rr.getString("username");
String pstyle=rr.getString("style");
%>
arr[i++]="<%=pid%> <%=pname%> <%=pstyle%>".split(" ")
<%}%>
}
结果如下:function initperson()
{ i=0;
arr[i++]="14 周六 ai".split(" ")
arr[i++]="11 张三 cims".split(" ")
arr[i++]="12 李四 cims".split(" ")
arr[i++]="112 111 cims".split(" ")
arr[i++]="13 王五 cims".split(" ")
arr[i++]="544 fdf cims".split(" ")
arr[i++]="18 王八 ee".split(" ")
arr[i++]="ik 张三峰 fm".split(" ")
arr[i++]="16 何七 ne".split(" ")
arr[i++]="17 张八 oa".split(" ")
}
但是打印到张三这一条的就出现问题:
arr[1][2]=张三;按理说应该是arr[1][1]=张三呀
张三这一条记录是我数据库中的第一条记录;
<select name=abc onchange="show(this.value)">
<option value="a">蔬菜类</option>
<option value="b">游戏类</option>
<option value="c">家电类</option>
<option value="d">日用品类</option>
</select>
<div id=demo>
</div>
<input type=submit value=submit>
</form>
<script>
var arr=[],i=0; arr[i++]="14 周六 ai".split(" ")
arr[i++]="11 张三 cims".split(" ")
arr[i++]="12 李四 cims".split(" ")
arr[i++]="112 111 cims".split(" ")
arr[i++]="13 王五 cims".split(" ")
arr[i++]="544 fdf cims".split(" ")
arr[i++]="18 王八 ee".split(" ")
arr[i++]="ik 张三峰 fm".split(" ")
arr[i++]="16 何七 ne".split(" ")
arr[i++]="17 张八 oa".split(" ")
//数据库里其他数据
function show(v){
var ret="",i;
/*for(i=0;i<arr.length;i++){
if(arr[i][3]==v)
ret+="<input type=checkbox value="+arr[i][0]+" name=good>"+arr[i][1]+" "
else if(ret!="")break;
}*/
for(var j=0;j<arr.length;j++)
alert(arr[j][2]);
document.all.demo.innerHTML=ret
}
document.all.abc.selectedIndex=-1
</script>