| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1428 人关注过本帖
标题:各位帮帮忙,我有个问题ajax的,谢谢
只看楼主 加入收藏
hhy420459674
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:203
专家分:179
注 册:2010-4-9
结帖率:54.9%
收藏
已结贴  问题点数:20 回复次数:13 
各位帮帮忙,我有个问题ajax的,谢谢
各位,我现在要做两个自定义控件,而这两个自动以控件中都只有一个DropDownList,一个控件中是放学员姓名,另一个控件是放学员的某一科成绩,我要实现的是选择学员名称,另一个DropDownList相应地就显示其成绩,但是不能刷新,所以就只有用ajax,要怎么实现啊?请各位帮帮忙哈!谢谢.......
搜索更多相关主题的帖子: ajax 
2010-07-26 16:03
misswang
Rank: 8Rank: 8
来 自:湖北荆州
等 级:贵宾
威 望:15
帖 子:265
专家分:720
注 册:2010-3-11
收藏
得分:3 
直接使用VS内置的Ajax组建 scripManager 和 updatePanel连个就够了
自定义空间放在updatePanel里面

misswp2010@
wangping103@
2010-07-26 20:22
hhy420459674
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:203
专家分:179
注 册:2010-4-9
收藏
得分:0 
回复 2楼 misswang
那如果不适用那个呢,因为我用的是VS2005  需要安装,所以我想不使用那个内置的,用ajax可以吗?怎么实现啊?谢谢!
2010-07-27 09:32
flloor
Rank: 2
来 自:上海
等 级:论坛游民
威 望:1
帖 子:10
专家分:93
注 册:2010-4-12
收藏
得分:2 
$("学员姓名DropDownListID").change(function () {
去后台获取数据转到前台在用JS赋值给“DropDownList成绩”
});
2010-07-27 10:50
hhy420459674
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:203
专家分:179
注 册:2010-4-9
收藏
得分:0 
我给我的代码,请大家帮我看看,
程序代码:
function DptBindXML(as_Url,as_Value,as_Text,ab_IsCom,ab_Asyn)
{
   var dpt = $("OrgDpt1_DDL_Depart");    //获取部门下拉列表框
   // 清除原有数据
   var li_DdlLen = dpt.options.length;
  for(var i = 0;i < li_DdlLen; i++)
  {
    dpt.remove(0);
  }
 
  // 增加一个选择项
  var newOption = document.createElement("OPTION");
  newOption.text = " -- 请选择 -- ";
  newOption.value = "";
  dpt.options.add(newOption);
 
  //如果机构中选中的是  -- 请选择 --  ,则在部门中只出现 -- 请选择 --
  if ($("OrgDpt1_DDL_Organ").value == "请选择")    //$("OrgDpt1_DDL_Organ")是机构下拉列表框
  {
       var dpt1 = $("OrgDpt1_DDL_Depart");
       for(var i = 0;i < dpt1.options.length ; i++ )
       {
          dpt1.remove(i);
       }
       var newOption1 = document.createElement("OPTION");
       newOption1.text = "-- 请选择 --";
       newOption1.value = "";
       dpt1.options.add(newOption1);
       return;
  }
 
  var xmlHttp = CreateXMLHttp();
  xmlHttp.open("Post",as_Url,ab_Asyn);    
   xmlHttp.setRequestHeader ("Content-Type","text/plain; charset=utf-8");
   xmlHttp.onreadystatechange=function()
   {      
        if(xmlHttp.readyState == 4)
        { 
            if (xmlHttp.status == 200)              //异常了500???不知道为什么这里是500,我直接执行获取数据的页面都能得到数据,我找不到原因
            {  
                 var oXmlData = xmlHttp.responseXML.getElementsByTagName("DocumentElement")[0];    //这里也是,获取不到数据,不知道为什么
                 if (oXmlData == null )
                 {
                    xmlHttp = null;
                    delete xmlHttp;
                    return;
                  }                 
                 
                 for(var i = 0; i < oXmlData.childNodes.length; i++ )
                 {  
                    newOption = document.createElement("OPTION");
                   
                    //处理显示效果
                    var blank;
                    var j = oXmlData.getElementByTagName("Grade")[i].firstChild.nodeValue;
                    for (var k=2; k<j; k++)
                    {
                        blank += "&nbsp;&nbsp;&nbsp;";
                    }
                    blank += "&nbsp;├&nbsp;";
                   
                    if(ab_IsCom)
                    {
                        newOption.text ="["+ oXmlData.getElementsByTagName(as_Value)[i].firstChild.nodeValue+"] " + Server.HtmlDecode(blank + oXmlData.getElementsByTagName(as_Text)[i].firstChild.nodeValue);
                    }
                    else
                    { 
                        newOption.text = oXmlData.getElementsByTagName(as_Text)[i].firstChild.nodeValue;
                    }
                    newOption.value = oXmlData.getElementsByTagName(as_Value)[i].firstChild.nodeValue;
                    dpt.options.add(newOption);
                 }
              xmlHttp = null;
              delete xmlHttp;
              return true;
            }
        }
    }
    xmlHttp.send(null);
}
</script>
请各位帮我看看哈,有两个地方我注释了,不知道为什么?还有,请帮我看看这样的代码可以吗,有问题嘛?谢谢

[ 本帖最后由 hhy420459674 于 2010-7-27 12:12 编辑 ]
2010-07-27 12:05
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
xmlHttp.status 得到的值是500,证明你的页面已经出现了异常,既然已经异常了,下面当然也就不会再获取到数据了

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-07-27 16:24
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
个人感觉这么简单的一个功能,你弄的也挺复杂的,用net 2005带的那个ajax方式就很容易,没必要非得用jquery,除非你的整体架构都是用的jquery

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-07-27 16:26
saitor
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:5
帖 子:373
专家分:1520
注 册:2009-5-18
收藏
得分:0 
ab_Asyn这个不能直接发送,要进行键值对的网页编码封装。顺便对楼上说下有$符号的不一定是JQUERY,PROTOTYPE也是用这个来取元素,微软的AJAX库也用这个,$get();
2010-07-27 19:53
hhy420459674
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:203
专家分:179
注 册:2010-4-9
收藏
得分:0 
哦,谢谢各位 ,这个问题我已经解决了
不过我遇到了另外个问题想请教下,就是我的下拉列表框是通过js来赋值的,现在我想要在后台中获取这个DropDownList所选择的项的值,该则呢获取啊?我是用的Request.Form["DDL_Dpt"],但是得到的是null,为什么呢?请教下各位了!还有   我是在自定义控件中写的,在自定义控件中赋值的,也在自定义控件后台取值的,不过没有取到,会不会是因为在自定义控件中做就取不到哦??

[ 本帖最后由 hhy420459674 于 2010-7-28 15:38 编辑 ]
2010-07-28 15:32
hhy420459674
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:203
专家分:179
注 册:2010-4-9
收藏
得分:0 
回复 7楼 冰镇柠檬汁儿
我没有用JQuery啊?你们那里看到我用的JQuery了哦?不是所有的$()就是JQuery,那个只是在获取一个对像,就是document.getElementById(Obj),只是我把他提出来作为方法了,不然很多地方都要重复写document.getElementById
2010-07-28 15:36
快速回复:各位帮帮忙,我有个问题ajax的,谢谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022773 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved