这是我的注册页面,当选择性别时下拉列表控件会动态加载项,但是密码框会清空。我不想在选择性别后再去输入一次密码,高手们帮帮忙!
下面是性别改变时下拉列表控件的动态加载项
    protected void radNan_CheckedChanged(object sender, EventArgs e)
    {
        dropTou.Items.Clear();
        Image1.ImageUrl = @"~/images/pic1.gif";
        dropTou.Items.Add("pic3.gif");
        dropTou.Items.Add("pic1.gif");
        dropTou.Items.Add("pic10.gif");
        dropTou.Items.Add("pic2.gif");
    }
    protected void radnv_CheckedChanged(object sender, EventArgs e)
    {
        dropTou.Items.Clear();
        Image1.ImageUrl = @"~/images/pic24.gif";
        dropTou.Items.Add("pic24.gif");
        dropTou.Items.Add("pic26.gif");
        dropTou.Items.Add("pic28.gif");
        dropTou.Items.Add("pic42.gif");
    }

解决方案 »

  1.   

    用js 修改那个img 的src
    回复内容太短
      

  2.   

    ajax!!
    最简单的是用微软的ajax!!
      

  3.   

    你该不会是把表单所有内容都放到一个UpdatePanel里了吧
      

  4.   

    应该把那一部分放到UpdatePanel里面啊?
      

  5.   

    js通过ajax异步获取数据绑定到下拉框
    或使用updatepanel局部刷新
      

  6.   

    谢谢各位,我用updatepanel局部刷新做出来了,想问问JS怎么写啊?
      

  7.   

    因为当你在选择性别之后,会回传服务器,回传服务器的后果就是页面上的东西都没有了,因为你启用了viewstate,所以其他空间的数据还能保持,但是密码框好像保存不了。。用ajax吧。把下拉框和图片放到UpdatePanel里面
      

  8.   


    var ddl = document.getElementById("<%= dropTou.ClientID %>");
    var img = document.getElementById("<%= Image1.ClientID %>");
    function MaleClick(cbMale)
    {
        if(cbMale.Checked)
        {
            img.src = '/images/pic1.gif';  
            ddl.options.length = 0;
            ddl.options.Add(new Option('pic3.gif','pic3.gif');
            ddl.options.Add(new Option('pic1.gif','pic1.gif');
            ddl.options.Add(new Option('pic10.gif','pic10.gif');
            ddl.options.Add(new Option('pic2.gif','pic2.gif');
     
        }
    }function FemaleClick(cbFemale)
    {
        if(cbFemale.Checked)
        {
            img.src = '/images/pic24.gif';  
            ddl.options.length = 0;
            ddl.options.Add(new Option('pic24.gif','pic24.gif');
            ddl.options.Add(new Option('pic26.gif','pic26.gif');
            ddl.options.Add(new Option('pic28.gif','pic28.gif');
            ddl.options.Add(new Option('pic42.gif','pic42.gif');
     
        }}
    把那两个CheckBox换成以下:<input type="checkbox" name="gender" onclick="MaleClick(this);" />男
    <input type="checkbox" name="gender" onclick="FemaleClick(this);" />女
      

  9.   

    ddl.options.Add后面漏了右括号了,自己补上吧