//when you change select1 ,function changeChild can make select2 to change
here please notice the function eval() ,it can get the value of “cid“ and add it with the string “num“
if the value of cid is aaa ,then the result of eval(cid+"num") is aaanum .
function showTop(){
for(var i=0;i<ctnum;i++){
frmpro.select1.add(new Option(tn[i],ti[i]));
}
}
function changeChild(cid){
for(var i=0;i<eval(cid+"num");i++){
frmpro.select2.add(new Option(eval("cn"+cid)[i],eval("ci"+cid)[i]));
}
}
//following is a java src to generate 4 arrays .
if you select a ,then you can find a array c associate with it .
/**
* 生成类别js
*/
public static void buildJS() {
String[] ctgid = getAllTopCid();
int ctgnum = 0;
if (ctgid != null)
ctgnum = ctgid.length;
StringBuffer jsstr = new StringBuffer();
jsstr.append("var ctnum=" + ctgnum + ";");
jsstr.append("var ti=new Array(ctnum);");
jsstr.append("var tn=new Array(ctnum);");
for (int i = 0; i < ctgid.length; i++) {
String[] childid = getChildid(ctgid[i]);
String[] childname = getChildName(ctgid[i]);
int childnum = 0;
if (childid != null)
childnum = childid.length;
jsstr.append("ti[" + i + "]='" + ctgid[i] + "';");
jsstr.append("tn[" + i + "]='" + getClassName(ctgid[i]) + "';");
jsstr.append("var " + ctgid[i] + "num="+childnum+";");
jsstr.append("var ci" + ctgid[i] + "=new Array(" + ctgid[i] + "num);");
jsstr.append("var cn" + ctgid[i] + "=new Array(" + ctgid[i] + "num);");
for (int j = 0; j < childnum; j++) {
jsstr.append( "ci" + ctgid[i] + "[" + j + "]='" + childid[j] + "';");
jsstr.append( "cn" + ctgid[i] + "[" + j + "]='" + childname[j] + "';");
}
}
Util.writeTxtFile("e://fangzi//images//category.js",jsstr.toString(), false);
}