asp.net+c#开发,在页面上用javascript给dropdownlist控件赋值:
for(var i = 0;i<arrsltsubtype.length;i++)
{
sltsubtype[i+1] = new Option(arrsltsubtype[i],i+1);
页面上也能看到赋值的结果,也能进行选择,选择完成后,点页面的提交按钮,讲选择的结果写入XML文件,可在XML文件里没有刚才选择的结果值。提交结束后,原来已经有值的dropdownlist控件里面也没有任何值了。在页面上也将dropdownlist控件选择的值用javascript赋给了一个textbox控件,提交后,XML文件里也有这个textbox控件的值,页面上,该文本框里的值也都在,为什么dropdownlist里的值就没了,后台也无法将其值写入XML文件?

解决方案 »

  1.   

    提交前将dropdownlist的值给一个hidden input,然后后台取这个值就可以了
      

  2.   

    没用过C#,但我知道它支持JSON。你最好选择json作为交互格式,它的优点:结构清晰;体较小,和后台交互的流量最少能到xml格式的一半。
      

  3.   

    这个方法肯定可行,还有其他方法没?提交完成后,dropdownlist控件的内容也清空了,这个有什么办法没?为什么文本框赋的值就没问题?
      

  4.   

    if (!IsPostBack)
                {
                    ddlProgramType.Attributes.Add("onchange", "setselect()");
                    ddlSubType.Attributes.Add("onchange", "select()");
                    ddlAreaType.Attributes.Add("onchange", "select1()");
                    txtSeriesTitle.Attributes.Add("onchange", "textchange1()");
                    txtNameofCreator.Attributes.Add("onchange", "textchange2()");
                }
    在ispostback里面只是绑定了几个事件。
      

  5.   

    貌似没有其它,.net的东西都是用viewstate保存状态的,而你用js添加的不会保存