页面上有一个DropDownList控件,一个按钮,想通过点击按钮来向DropDownList中增加一项,于是我通过向点击按钮弹出的第二个页中输入文本,再点确定来向数据库中增加一项,再返回到第一个页面,可是这时如果不刷新第一个页,刚刚增加的是显示不出来的,怎么样能做到不刷新第一个页就能立刻显示出来?

解决方案 »

  1.   

    我不一定要从服务器端取,我要向数据库中写,但是不必要从数据库中读,因为用户填写之后,我直接把他填写的增加到DropDownList中就行了
      

  2.   

    你直接在按钮的服务器端事件中向DropDownList的Items里增加一项,一条代码就搞定了。
      

  3.   

    function addSelect(opText, opValue)
    {
        // 创建option对象
            var option = document.createElement("OPTION");
            option.value = opValue;
            option.text  = opText;         // 增加新option选项
            document.getElementById('cobComList').add(option);         
            
    }
      

  4.   

    避免刷新有很多方法。比较慢的是采用一句话:在你的页面的page_load中写:
      this.SmartNavigation=true;比较快的是asp.net2.0的客户端回调技术。不过这个并不完整,需要你写一个客户端函数来刷新显示。当然也可以采用其它Ajax框架。
      

  5.   

    哦,显然,如果你忘记了页面上一个个控件之间的有机联系,就只有画面没有功能了。一个操作需要考虑到你之后的操作如何获得前边操作的状态数据的问题。你要事先说明程序应该如何获得DropDownlist的值,或者确保程序员对这个都是心照不宣的。对于asp.net,标准的获得DropDownList的方式就是通过Items属性、SelectedValue、SelectedItem属性,因此对于破坏这种功能的“无刷新”实现方式应该每当可能相关的代码有改动就要重新从头复审和测试。
      

  6.   

    我用的是ASP.NET,使用两个页是因为要让用户输入项啊,第一个页面上没有位置让用户输入
      

  7.   

    第二个页面要向第一个页面传值  第一个页面写DropDownList的Items里增加一项
      

  8.   

    那就用JAVASCRIPT把
    click the button, 弹出一个对话框输入你要的
    让后在DDL控件上显示你输入的那个内容
    用户就可以看到了拉