JS写的多级联select,求教如何取值 其实select的选取值不管是不是多级联通过select的name就可以取得,给你的每个select都加上不同的name属性在后台去取就可以了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 每个Select都增加Name的属性后台获取根据ASP来讲,用request.form(Name值) 就能获取如果是其它语言就要用当地的写法了。 在servlet里面request没有form(Name值)这个方法啊。 具体怎么操作呢?不知道你用的是什么,如果是action的话只要在action里有对应的name的属性并有get和set方法就可以了如果是servlet的话 String name = request.getParameter("name");这里name就是你在前台设置的name 具体怎么操作呢?不知道你用的是什么,如果是action的话只要在action里有对应的name的属性并有get和set方法就可以了如果是servlet的话 String name = request.getParameter("name");这里name就是你在前台设置的namevar $ = function (id) { return "string" == typeof id ? document.getElementById(id) : id;};function addEventHandler(oTarget, sEventType, fnHandler) { if (oTarget.addEventListener) { oTarget.addEventListener(sEventType, fnHandler, false); } else if (oTarget.attachEvent) { oTarget.attachEvent("on" + sEventType, fnHandler); } else { oTarget["on" + sEventType] = fnHandler; }};function Each(arrList, fun){ for (var i = 0, len = arrList.length; i < len; i++) { fun(arrList[i], i); }};function GetOption(val, txt) { var op = document.createElement("OPTION"); op.value = val; op.innerHTML = txt; return op;};var Class = { create: function() { return function() { this.initialize.apply(this, arguments); } }}Object.extend = function(destination, source) { for (var property in source) { destination[property] = source[property]; } return destination;}var CascadeSelect = Class.create();CascadeSelect.prototype = { //select集合,菜单对象 initialize: function(arrSelects, arrMenu, options) { if(arrSelects.length <= 0 || arrMenu.lenght <= 0) return;//菜单对象 var oThis = this; this.Selects = [];//select集合 this.Menu = arrMenu;//菜单对象 this.SetOptions(options); this.Default = this.options.Default || []; this.ShowEmpty = !!this.options.ShowEmpty; this.EmptyText = this.options.EmptyText.toString(); //设置Selects集合和change事件 Each(arrSelects, function(o, i){ addEventHandler((oThis.Selects[i] = $(o)), "change", function(){ oThis.Set(i); }); }); this.ReSet(); }, //设置默认属性 SetOptions: function(options) { this.options = {//默认值 Default: [],//默认值(按顺序) ShowEmpty: false,//是否显示空值(位于第一个) EmptyText: "请选择"//空值显示文本(ShowEmpty为true时有效) }; Object.extend(this.options, options || {}); }, //初始化select ReSet: function() { this.SetSelect(this.Selects[0], this.Menu, this.Default.shift()); this.Set(0); }, //全部select设置 Set: function(index) { var menu = this.Menu //第一个select不需要处理所以从1开始 for(var i=1, len = this.Selects.length; i < len; i++){ if(menu.length > 0){ //获取菜单 var value = this.Selects[i-1].value; if(value!=""){ Each(menu, function(o){ if(o.val == value){ menu = o.menu || []; } }); } else { menu = []; } //设置菜单 if(i > index){ this.SetSelect(this.Selects[i], menu, this.Default.shift()); } } else { //没有数据 this.SetSelect(this.Selects[i], [], ""); } } //清空默认值 this.Default.length = 0; }, //select设置 SetSelect: function(oSel, menu, value) { oSel.options.length = 0; oSel.disabled = false; if(this.ShowEmpty){ oSel.appendChild(GetOption("", this.EmptyText)); } if(menu.length <= 0){ oSel.disabled = true; return; } Each(menu, function(o){ var op = GetOption(o.val, o.txt ? o.txt : o.val); op.selected = (value == op.value); oSel.appendChild(op); }); }, //添加菜单 Add: function(menu) { this.Menu[this.Menu.length] = menu; this.ReSet(); }, //删除菜单 Delete: function(index) { if(index < 0 || index >= this.Menu.length) return; for(var i = index, len = this.Menu.length - 1; i < len; i++){ this.Menu[i] = this.Menu[i + 1]; } this.Menu.pop() this.ReSet(); }};window.onload=function(){ var menu = [ {'val': '广西自治区', 'menu': [ {'val': '梧州市', 'menu': [ {'val': '万秀区','menu':[ {'val':'选择街道'}, {'val':'富民街道','menu':[ {'val':'选择社区'}, {'val':'富康社区'}, {'val':'富安社区'}]}, {'val':'东兴街道','menu':[ {'val':'选择社区'}, {'val':'香樟社区'}, {'val':'月桂社区'}]}, {'val':'角嘴街道','menu':[ {'val':'选择社区'}, {'val':'蓝天社区'}, {'val':'塘源社区'}]}, {'val':'城北街道','menu':[ {'val':'选择社区'}, {'val':'华机社区'}, {'val':'桂北社区'}]}, {'val':'城中街道','menu':[ {'val':'选择社区'}, {'val':'冰泉社区'}, {'val':'四坊社区'}]}]} ]} ]} ]; var sel=["sel1", "sel2", "sel3", "sel4", "sel5"]; var val=["广西自治区"]; var cs = new CascadeSelect(sel, menu, { Default: val });};这是JS代码,具体该怎么操作呢?小生赶鸭子上架,对这块实在不熟悉,以前同事写的,现在他走了,东西丢给我。 触发点击事件 现在播新闻的都喜欢在屏幕上指指划划,如何实现的? window.open打开的窗口都会被阻止吗? js的for循环延迟 求一个js格式化成特定字符串的函数,并递减,我弄了很久没搞定,请高手帮忙 获取HTML元素的坐标 请教window.print()的问题(怎样去掉页面下面的URL) 以下代碼在NetScape下怎樣寫???? 如何在打开网页时隐藏鼠标? zTree onClick事件没反应,已查阅很多资料,接近崩溃 EXTJS grid里面我手动插入了一行数据,但是表格分页组件上显示0条数据 easyui datagrid的combobox动态选择后为某单元格赋值
不知道你用的是什么,
如果是action的话只要在action里有对应的name的属性并有get和set方法就可以了
如果是servlet的话 String name = request.getParameter("name");这里name就是你在前台设置的name
不知道你用的是什么,
如果是action的话只要在action里有对应的name的属性并有get和set方法就可以了
如果是servlet的话 String name = request.getParameter("name");这里name就是你在前台设置的name
var $ = function (id) {
return "string" == typeof id ? document.getElementById(id) : id;
};
function addEventHandler(oTarget, sEventType, fnHandler) {
if (oTarget.addEventListener) {
oTarget.addEventListener(sEventType, fnHandler, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("on" + sEventType, fnHandler);
} else {
oTarget["on" + sEventType] = fnHandler;
}
};
function Each(arrList, fun){
for (var i = 0, len = arrList.length; i < len; i++) { fun(arrList[i], i); }
};
function GetOption(val, txt) {
var op = document.createElement("OPTION");
op.value = val; op.innerHTML = txt;
return op;
};
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}
var CascadeSelect = Class.create();
CascadeSelect.prototype = {
//select集合,菜单对象
initialize: function(arrSelects, arrMenu, options) {
if(arrSelects.length <= 0 || arrMenu.lenght <= 0) return;//菜单对象
var oThis = this;
this.Selects = [];//select集合
this.Menu = arrMenu;//菜单对象
this.SetOptions(options);
this.Default = this.options.Default || [];
this.ShowEmpty = !!this.options.ShowEmpty;
this.EmptyText = this.options.EmptyText.toString();
//设置Selects集合和change事件
Each(arrSelects, function(o, i){
addEventHandler((oThis.Selects[i] = $(o)), "change", function(){ oThis.Set(i); });
});
this.ReSet();
},
//设置默认属性
SetOptions: function(options) {
this.options = {//默认值
Default: [],//默认值(按顺序)
ShowEmpty: false,//是否显示空值(位于第一个)
EmptyText: "请选择"//空值显示文本(ShowEmpty为true时有效)
};
Object.extend(this.options, options || {});
},
//初始化select
ReSet: function() {
this.SetSelect(this.Selects[0], this.Menu, this.Default.shift());
this.Set(0);
},
//全部select设置
Set: function(index) {
var menu = this.Menu
//第一个select不需要处理所以从1开始
for(var i=1, len = this.Selects.length; i < len; i++){
if(menu.length > 0){
//获取菜单
var value = this.Selects[i-1].value;
if(value!=""){
Each(menu, function(o){ if(o.val == value){ menu = o.menu || []; } });
} else { menu = []; }
//设置菜单
if(i > index){ this.SetSelect(this.Selects[i], menu, this.Default.shift()); }
} else {
//没有数据
this.SetSelect(this.Selects[i], [], "");
}
}
//清空默认值
this.Default.length = 0;
},
//select设置
SetSelect: function(oSel, menu, value) {
oSel.options.length = 0; oSel.disabled = false;
if(this.ShowEmpty){ oSel.appendChild(GetOption("", this.EmptyText)); }
if(menu.length <= 0){ oSel.disabled = true; return; }
Each(menu, function(o){
var op = GetOption(o.val, o.txt ? o.txt : o.val); op.selected = (value == op.value);
oSel.appendChild(op);
});
},
//添加菜单
Add: function(menu) {
this.Menu[this.Menu.length] = menu;
this.ReSet();
},
//删除菜单
Delete: function(index) {
if(index < 0 || index >= this.Menu.length) return;
for(var i = index, len = this.Menu.length - 1; i < len; i++){ this.Menu[i] = this.Menu[i + 1]; }
this.Menu.pop()
this.ReSet();
}
};
window.onload=function(){
var menu = [
{'val': '广西自治区', 'menu': [
{'val': '梧州市', 'menu': [
{'val': '万秀区','menu':[
{'val':'选择街道'},
{'val':'富民街道','menu':[
{'val':'选择社区'},
{'val':'富康社区'},
{'val':'富安社区'}]},
{'val':'东兴街道','menu':[
{'val':'选择社区'},
{'val':'香樟社区'},
{'val':'月桂社区'}]},
{'val':'角嘴街道','menu':[
{'val':'选择社区'},
{'val':'蓝天社区'},
{'val':'塘源社区'}]},
{'val':'城北街道','menu':[
{'val':'选择社区'},
{'val':'华机社区'},
{'val':'桂北社区'}]},
{'val':'城中街道','menu':[
{'val':'选择社区'},
{'val':'冰泉社区'},
{'val':'四坊社区'}]}]}
]}
]}
];
var sel=["sel1", "sel2", "sel3", "sel4", "sel5"];
var val=["广西自治区"];
var cs = new CascadeSelect(sel, menu, { Default: val });
};
这是JS代码,具体该怎么操作呢?小生赶鸭子上架,对这块实在不熟悉,以前同事写的,现在他走了,东西丢给我。