<script type="text/javascript">
var arr1="岗位证|安全考核证|建造师证|工程师证 ";
var arr2=new Array();
arr2[0]="资料员证|质安员证|材料员证|预算员证|施工员证|测量员证|统计员证";
arr2[1]="安全考核A证|安全考核B证|安全考核C证";
arr2[2]="一级建造师证|二级建造师证|三级建造师证";
arr2[3]="初级工程师证|中级工程师证|高级工程师证";
var arr3=new Array;
arr3["资料员证"]="2";arr3["质安员证"]="2";arr3["材料员证"]="2";arr3["预算员证"]="2";arr3["施工员证"]="2";arr3["测量员证"]="2";arr3["统计员证"]="2";
arr3["安全考核A证"]="1";arr3["安全考核B证"]="1";arr3["安全考核C证"]="1";
arr3["一级建造师证"]="2";arr3["二级建造师证"]="2";arr3["三级建造师证"]="2";
arr3["初级工程师证"]="3";arr3["中级工程师证"]="3";arr3["高级工程师证"]="3";
var j=0;
var count=0;
function fun()
{
var one=arr1.split("|");
var sel1=document.getElementById("one1");
var sel2=document.getElementById("two2");
var sel3=document.getElementById("three3");
clearSel(sel1);
for(var i=0;i<one.length;i++)
{
sel1.options.add(new Option(one[i],one[i]));
}
var two=arr2[0].split("|");
clearSel(sel2);
for(var i=0;i<two.length;i++)
{
sel2.options.add(new Option(two[i],two[i]));
}
var three=arr3["2"].split("|");
clearSel(sel3);
for(var i=0;i<three.length;i++)
{
sel3.options.add(new Option(three[i],three[i]));
}
}
function clearSel(obj)
{
obj.innerHTML="";
}
function change1(obj)
{
j=obj.selectedIndex;
var sel2=document.getElementById("two2");
var sel3=document.getElementById("three3");
var two=arr2[j].split("|");
clearSel(sel2);
clearSel(sel3);
for(var i=0;i<two.length;i++)
{
sel2.options.add(new Option(two[i],two[i]));
}
var v=arr3[sel2.value].split("|");
for(var m=0;m<v.length;m++)
{
sel3.options.add(new Option(v[m],v[m]));
}
}
function change2(obj)
{
var sel2=document.getElementById("two2");
var sel3=document.getElementById("three3");
clearSel(sel3);
if(arr3[sel2.value]!=null)
{
var v=arr3[sel2.value].split("|");
for(var m=0;m<v.length;m++)
{
sel3.options.add(new Option(v[m],v[m]));
}
}
else
{
sel3.options.add(new Option("没有值","没有值"));
}
}
</script>
以上为三级联动!
string imagetype =this.one1.SelectedValue.ToString();//one1.Text.ToString();
string Imaname = this.two2.Text.ToString();// two2.SelectedItem.Text.ToString();
string recheck=this.three3.Text.ToString();
当dropdownlist值改变的时候,后台获取不到值!autopostback为true时选择了就马上刷新还是没有值~
解决方案 »
- DataSet中两个DataTable怎么合并成一个?
- 发一个Ajax框架(提供AjaxFeeling框架源代码)
- windows应用程序中调用迅雷与Web应用程序调用迅雷的区别
- datagrid selectedindex 求助!!
- 用C#网站做好后,只要向真的INTERNET的服务器上传编译好的DLL还是目录结构都要上传?
- 当三层结构中 数据访问层 返回结果为DataSet时怎么得到错误信息?
- 如何在程序中动态描述页面的问题
- Wrox Professional C# (C#高级编程):下载
- 我觉得codebehind和用户控件简直就是重复!!
- 有些问题实在是搞不懂,请各路朋友和微软专家进来聊一聊。
- 求通用的js 验证框架
- 创建自定义控件失败,提示“编译器错误消息: CS0433。。。。。。”
if(!IsPostBack)加个这个 。。、
一般解决方法是:
1>全部后台控制(runat="server")
2>全部js控制,包括提交数据.
如果两者混用,非常容易出现你这种情况
你是用js给后面的联动dropdownlist添加options的,当然拿不到值的。
在页面放一个asp:Hidden,然后,在每个dropdownlist的onchange事件(非后台的OnChanged事件),给隐藏域赋值,这样在后台可以拿到隐藏域的值。
<select id="s1" onchange="s1changed()"></select>
<select id="s2" onchange="s2changed()"></select>
<select id="s3" onchange="s3changed()"></select>
asp:HiddenField id="s1_hide" runat="server" />
asp:HiddenField id="s2_hide" runat="server" />
asp:HiddenField id="s3_hide" runat="server" />
假设s1连动s2;s2连动s3。
"s1changed()"的方法中:
1. 把s1选择的value值放到s1_hide中,ajax获取数据,初始化s2的options。 "s2changed()"的方法中:
1. 把s2选择的value值放到s2_hide中,ajax获取数据,初始化s3的options。 "s3changed()"的方法中:
1. 把s3选择的value值放到s3_hide中。后台取s1_hide、s2_hide、s3_hide就是三个选项的value。
不然刷新 肯定又没了