|
|
@@ -3,11 +3,11 @@ function selNext(oj, v) { |
|
|
|
var newobj = oj.options; |
|
|
|
var selv = parseInt(v); |
|
|
|
var maxv = parseInt(v) + 500; |
|
|
|
while(newobj.length > 0) { |
|
|
|
while (newobj.length > 0) { |
|
|
|
oj.remove(0); |
|
|
|
} |
|
|
|
clear(oj); |
|
|
|
if (selv==0) { |
|
|
|
if (selv == 0) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = '具体地区'; |
|
|
|
aOption.value = '0'; |
|
|
@@ -20,7 +20,7 @@ function selNext(oj, v) { |
|
|
|
oj.options.add(aOption); |
|
|
|
} |
|
|
|
var str = ''; |
|
|
|
for (i=selv+1; i < maxv; i++) { |
|
|
|
for (i = selv + 1; i < maxv; i++) { |
|
|
|
if (!em_nativeplaces[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = em_nativeplaces[i]; |
|
|
@@ -32,23 +32,23 @@ function selNext(oj, v) { |
|
|
|
function ChangeSon() { |
|
|
|
//由于支持3级联动,所以这里需要对自己改变进行重构 |
|
|
|
var emname = this.name.replace('_son', ''); |
|
|
|
if (document.getElementById(emname+'_sec')) { |
|
|
|
if (document.getElementById(emname + '_sec')) { |
|
|
|
var oj = document.getElementById(emname + '_sec'); |
|
|
|
} else { |
|
|
|
var oj = document.createElement('select'); |
|
|
|
var oj = document.createElement('select'); |
|
|
|
oj.name = emname + '_sec'; |
|
|
|
oj.id = emname + '_sec'; |
|
|
|
oj.id = emname + '_sec'; |
|
|
|
oj.className = "form-control admin-input-sm mr-2"; |
|
|
|
oj.onchange = ChangeSec; |
|
|
|
} |
|
|
|
var v = this.options[this.selectedIndex].value; |
|
|
|
document.getElementById('hidden_'+emname).value = v; |
|
|
|
document.getElementById('hidden_' + emname).value = v; |
|
|
|
var newobj = oj.options; |
|
|
|
var selarr = eval('em_'+emname+'s'); |
|
|
|
var selarr = eval('em_' + emname + 's'); |
|
|
|
var selv = parseInt(v); |
|
|
|
var maxv = parseInt(v) + 0.5; |
|
|
|
i = 0; |
|
|
|
while(newobj && newobj.length > 0) oj.remove(0); |
|
|
|
while (newobj && newobj.length > 0) oj.remove(0); |
|
|
|
clear(oj); |
|
|
|
if (selv == 0) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
@@ -63,7 +63,7 @@ function ChangeSon() { |
|
|
|
oj.options.add(aOption); |
|
|
|
} |
|
|
|
var str = ''; |
|
|
|
var j=0; |
|
|
|
var j = 0; |
|
|
|
for (i = selv + 0.001; i < maxv; i = FloatAdd(i, 0.001)) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
@@ -72,40 +72,47 @@ function ChangeSon() { |
|
|
|
oj.options.add(aOption); |
|
|
|
j++; |
|
|
|
} |
|
|
|
if (j > 0) document.getElementById('span_'+emname+'_sec').appendChild(oj); |
|
|
|
else document.getElementById('span_'+emname+'_sec').innerHTML = ""; |
|
|
|
if (j > 0) { |
|
|
|
document.getElementById('span_' + emname + '_sec').appendChild(oj); |
|
|
|
document.getElementById('span_' + emname + '_sec').style.display = "initial" |
|
|
|
} else { |
|
|
|
document.getElementById('span_' + emname + '_sec').innerHTML = ""; |
|
|
|
} |
|
|
|
} |
|
|
|
//改变第三级的事件 |
|
|
|
function ChangeSec() { |
|
|
|
var emname = this.name.replace('_sec', ''); |
|
|
|
var topSelObj = document.getElementById(emname+'_top'); |
|
|
|
if (this.options[this.selectedIndex].value==0) { |
|
|
|
document.getElementById('hidden_'+emname).value = topSelObj.options[topSelObj.selectedIndex].value; |
|
|
|
var topSelObj = document.getElementById(emname + '_top'); |
|
|
|
if (this.options[this.selectedIndex].value == 0) { |
|
|
|
document.getElementById('hidden_' + emname).value = topSelObj.options[topSelObj.selectedIndex].value; |
|
|
|
} else { |
|
|
|
document.getElementById('hidden_'+emname).value = this.options[this.selectedIndex].value; |
|
|
|
document.getElementById('hidden_' + emname).value = this.options[this.selectedIndex].value; |
|
|
|
} |
|
|
|
} |
|
|
|
//顶级类改变事件 |
|
|
|
function selNextSon() { |
|
|
|
var emname = this.name.replace('_top', ''); |
|
|
|
if (document.getElementById(emname+'_son')) { |
|
|
|
if (document.getElementById(emname + '_son')) { |
|
|
|
var oj = document.getElementById(emname + '_son'); |
|
|
|
} else { |
|
|
|
var oj = document.createElement('select'); |
|
|
|
var oj = document.createElement('select'); |
|
|
|
oj.name = emname + '_son'; |
|
|
|
oj.id = emname + '_son'; |
|
|
|
oj.id = emname + '_son'; |
|
|
|
oj.className = "form-control admin-input-sm mr-2"; |
|
|
|
oj.onchange = ChangeSon; |
|
|
|
} |
|
|
|
var v = this.options[this.selectedIndex].value; |
|
|
|
document.getElementById('hidden_'+emname).value = v; |
|
|
|
document.getElementById('hidden_' + emname).value = v; |
|
|
|
if (v < 500) { |
|
|
|
return |
|
|
|
} |
|
|
|
var newobj = oj.options; |
|
|
|
var selarr = eval('em_'+emname+'s'); |
|
|
|
var selarr = eval('em_' + emname + 's'); |
|
|
|
var selv = parseInt(v); |
|
|
|
var maxv = parseInt(v) + 500; |
|
|
|
while(newobj && newobj.length > 0) oj.remove(0); |
|
|
|
while (newobj && newobj.length > 0) oj.remove(0); |
|
|
|
clear(oj); |
|
|
|
if (selv==0) { |
|
|
|
if (selv == 0) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = '请选择..'; |
|
|
|
aOption.value = '0'; |
|
|
@@ -118,14 +125,22 @@ function selNextSon() { |
|
|
|
oj.options.add(aOption); |
|
|
|
} |
|
|
|
var str = ''; |
|
|
|
for (i=selv+1; i < maxv; i++) { |
|
|
|
var count = 0; |
|
|
|
for (i = selv + 1; i < maxv; i++) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
oj.options.add(aOption); |
|
|
|
count = count + 1; |
|
|
|
} |
|
|
|
document.getElementById('span_'+emname+'_son').appendChild(oj); |
|
|
|
if (count > 0) { |
|
|
|
document.getElementById('span_' + emname + '_son').style.display = "initial" |
|
|
|
document.getElementById('span_' + emname + '_son').appendChild(oj); |
|
|
|
} else { |
|
|
|
document.getElementById('span_' + emname + '_son').style.display = "none" |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
//根据数组生成多级联动菜单 |
|
|
|
function MakeTopSelect(emname, selvalue) { |
|
|
@@ -133,10 +148,10 @@ function MakeTopSelect(emname, selvalue) { |
|
|
|
var aOption = null; |
|
|
|
var selObj = document.createElement("select"); |
|
|
|
selObj.name = emname + '_top'; |
|
|
|
selObj.id = emname + '_top'; |
|
|
|
selObj.id = emname + '_top'; |
|
|
|
selObj.className = "form-control admin-input-sm mr-2"; |
|
|
|
selObj.onchange = selNextSon; |
|
|
|
var selarr = eval('em_'+emname+'s'); |
|
|
|
var selarr = eval('em_' + emname + 's'); |
|
|
|
var topvalue = 0; |
|
|
|
var sonvalue = 0; |
|
|
|
var secvalue = 0; |
|
|
@@ -144,54 +159,25 @@ function MakeTopSelect(emname, selvalue) { |
|
|
|
aOption.text = '请选择..'; |
|
|
|
aOption.value = 0; |
|
|
|
selObj.options.add(aOption); |
|
|
|
if (selvalue % 500 == 0 ) { |
|
|
|
topvalue = selvalue; |
|
|
|
} |
|
|
|
//如果是小数,则依次取出顶级数值,二级数值以及三级数值 |
|
|
|
else if (!!(selvalue % 1)) { |
|
|
|
secvalue = selvalue; |
|
|
|
sonvalue = Math.floor(selvalue); |
|
|
|
topvalue = sonvalue - (sonvalue % 500); |
|
|
|
//alert(secvalue); |
|
|
|
} else { |
|
|
|
sonvalue = selvalue; |
|
|
|
topvalue = selvalue - (selvalue % 500); |
|
|
|
} |
|
|
|
for (i = 500; i <= selarr.length; i += 500) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
if (i == topvalue) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
aOption.selected = true; |
|
|
|
var fkey = Object.keys(selarr)[0]; |
|
|
|
if (fkey >= 500) { |
|
|
|
if (selvalue % 500 == 0) { |
|
|
|
topvalue = selvalue; |
|
|
|
} |
|
|
|
//如果是小数,则依次取出顶级数值,二级数值以及三级数值 |
|
|
|
else if (!!(selvalue % 1)) { |
|
|
|
secvalue = selvalue; |
|
|
|
sonvalue = Math.floor(selvalue); |
|
|
|
topvalue = sonvalue - (sonvalue % 500); |
|
|
|
//alert(secvalue); |
|
|
|
} else { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
sonvalue = selvalue; |
|
|
|
topvalue = selvalue - (selvalue % 500); |
|
|
|
} |
|
|
|
} |
|
|
|
document.getElementById('span_'+emname).appendChild(selObj); |
|
|
|
//如果子类存在值,创建子类 |
|
|
|
selObj = document.createElement("select"); |
|
|
|
selObj.name = emname + '_son'; |
|
|
|
selObj.id = emname + '_son'; |
|
|
|
selObj.className = "form-control admin-input-sm mr-2"; |
|
|
|
selObj.onchange = ChangeSon; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = '请选择..'; |
|
|
|
aOption.value = 0; |
|
|
|
selObj.options.add(aOption); |
|
|
|
//当大类有值输出子类 |
|
|
|
if (topvalue > 0) { |
|
|
|
var selv = topvalue; |
|
|
|
var maxv = parseInt(topvalue) + 500; |
|
|
|
for (i = selv + 1; i < maxv; i++) { |
|
|
|
for (i = 500; i <= selarr.length; i += 500) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
if (i == sonvalue) { |
|
|
|
if (i == topvalue) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
@@ -204,26 +190,92 @@ function MakeTopSelect(emname, selvalue) { |
|
|
|
selObj.options.add(aOption); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
document.getElementById('span_'+emname+'_son').appendChild(selObj); |
|
|
|
//若存在第三级则创建 |
|
|
|
if (secvalue > 0) { |
|
|
|
|
|
|
|
document.getElementById('span_' + emname).appendChild(selObj); |
|
|
|
//如果子类存在值,创建子类 |
|
|
|
selObj = document.createElement("select"); |
|
|
|
selObj.name = emname + '_sec'; |
|
|
|
selObj.id = emname + '_sec'; |
|
|
|
selObj.onchange = ChangeSec; |
|
|
|
selObj.name = emname + '_son'; |
|
|
|
selObj.id = emname + '_son'; |
|
|
|
selObj.className = "form-control admin-input-sm mr-2"; |
|
|
|
selObj.onchange = ChangeSon; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = '请选择..'; |
|
|
|
selObj.className = "form-control admin-input-sm mr-2"; |
|
|
|
aOption.value = 0; |
|
|
|
selObj.options.add(aOption); |
|
|
|
var selv = sonvalue; |
|
|
|
var maxv = parseInt(sonvalue) + 0.5; |
|
|
|
i = 0; |
|
|
|
for (i = selv + 0.001; i < maxv; i = FloatAdd(i, 0.001)) { |
|
|
|
//当大类有值输出子类 |
|
|
|
if (topvalue > 0) { |
|
|
|
var selv = topvalue; |
|
|
|
var maxv = parseInt(topvalue) + 500; |
|
|
|
var count = 0; |
|
|
|
for (i = selv + 1; i < maxv; i++) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
if (i == sonvalue) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
aOption.selected = true; |
|
|
|
} else { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
} |
|
|
|
count = count + 1; |
|
|
|
} |
|
|
|
} |
|
|
|
if (count > 0) { |
|
|
|
document.getElementById('span_' + emname + '_son').style.display = "initial"; |
|
|
|
document.getElementById('span_' + emname + '_son').appendChild(selObj); |
|
|
|
} else { |
|
|
|
document.getElementById('span_' + emname + '_son').style.display = "none"; |
|
|
|
} |
|
|
|
|
|
|
|
//若存在第三级则创建 |
|
|
|
if (secvalue > 0) { |
|
|
|
selObj = document.createElement("select"); |
|
|
|
selObj.name = emname + '_sec'; |
|
|
|
selObj.id = emname + '_sec'; |
|
|
|
selObj.onchange = ChangeSec; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = '请选择..'; |
|
|
|
selObj.className = "form-control admin-input-sm mr-2"; |
|
|
|
aOption.value = 0; |
|
|
|
selObj.options.add(aOption); |
|
|
|
var selv = sonvalue; |
|
|
|
var maxv = parseInt(sonvalue) + 0.5; |
|
|
|
i = 0; |
|
|
|
var count = 0; |
|
|
|
for (i = selv + 0.001; i < maxv; i = FloatAdd(i, 0.001)) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
if (i == secvalue) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
aOption.selected = true; |
|
|
|
} else { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
|
selObj.options.add(aOption); |
|
|
|
} |
|
|
|
count = count + 1; |
|
|
|
} |
|
|
|
} |
|
|
|
if (count > 0) { |
|
|
|
document.getElementById('span_' + emname + '_sec').style.display = "initial"; |
|
|
|
document.getElementById('span_' + emname + '_sec').appendChild(selObj); |
|
|
|
} else { |
|
|
|
document.getElementById('span_' + emname + '_sec').style.display = "none"; |
|
|
|
} |
|
|
|
} else { |
|
|
|
for (i = 0; i <= selarr.length; i += 1) { |
|
|
|
if (!selarr[i]) continue; |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
if (i == secvalue) { |
|
|
|
if (i == selvalue) { |
|
|
|
aOption = document.createElement('OPTION'); |
|
|
|
aOption.text = selarr[i]; |
|
|
|
aOption.value = i; |
|
|
@@ -236,21 +288,22 @@ function MakeTopSelect(emname, selvalue) { |
|
|
|
selObj.options.add(aOption); |
|
|
|
} |
|
|
|
} |
|
|
|
document.getElementById('span_' + emname).appendChild(selObj); |
|
|
|
} |
|
|
|
document.getElementById('span_'+emname+'_sec').appendChild(selObj); |
|
|
|
|
|
|
|
} |
|
|
|
//两个小数相加进度计算 |
|
|
|
function FloatAdd(arg1, arg2) { |
|
|
|
var r1,r2,m; |
|
|
|
try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} |
|
|
|
try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} |
|
|
|
m=Math.pow(10,Math.max(r1,r2)) |
|
|
|
return (arg1*m+arg2*m)/m |
|
|
|
var r1, r2, m; |
|
|
|
try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 } |
|
|
|
try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 } |
|
|
|
m = Math.pow(10, Math.max(r1, r2)) |
|
|
|
return (arg1 * m + arg2 * m) / m |
|
|
|
} |
|
|
|
//清除旧对象 |
|
|
|
function clear(o) { |
|
|
|
l=o.length; |
|
|
|
for (i = 0; i< l; i++) { |
|
|
|
o.options[1]=null; |
|
|
|
l = o.length; |
|
|
|
for (i = 0; i < l; i++) { |
|
|
|
o.options[1] = null; |
|
|
|
} |
|
|
|
} |