首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

ajax 异步子用

2013-01-05 
ajax 异步调用本帖最后由 showbo 于 2012-11-01 11:57:12 编辑index.aspx:script languagejavascript

ajax 异步调用
本帖最后由 showbo 于 2012-11-01 11:57:12 编辑 index.aspx:

<script language="javascript" type="text/javascript">
// <!CDATA[

var xmlhttp=false;
function createHTTP()
{
  try
  { 
    xmlhttp=new ActiveXobject("Msxml2.XMLHTTP");
  }
  catch(e)
  {  
    try
     {
       xmlhttp=new ActiveXobject("Microsoft.XMLHTTP");
     }
     catch(e2)
     {
       xmlhttp=false;
     }
  }
  if(!xmlhttp && typeof XMLHttpRequest !='undefined'){
     xmlhttp=new XMLHttpRequest();
   }
}
            
      
function getData() {

var sAnimal=document.getElementById("txt").value;

createHTTP();
xmlhttp.onreadystatechange=statechange;
xmlhttp.open("GET","DataPage.aspx?sAnimal="+sAnimal,true);
xmlhttp.send(null);

}
function statechange()
{
  if(xmlhttp.readystate==4)
  {
    if(xmlhttp.status==200)
    {
      FillData(xmlhttp.responsetext);
    }  
  }    
}
function FillData(sAnimal)
{  
   document.getElementById("DropDownList1").options.length=0;
   var index;
   var ani;
   while(sAnimal.length>0)
   {
      index=sAnimal.indexOf(",");
      if(index>0)
      {
      ani=sAnimal.substring)0,index);
      sAnimal=sAnimal.substring(index+1);
      document.getElementById("DropDownList1").add(new option(ani,ani));
      }
      else
      {
      lastAnimal=sAnimal.substring(0,2);
      document.getElementById("DropDownList1").add(new option(lastAnimal,lastAnimal));
      break;
      }
         
   }
}
// ]]>
</script>
<body>
    <form id="form1" runat="server">
    <div>
        <table>
            <tr>
                <td colspan="3" style="height: 102px; text-align: center">
                    <strong><span style="font-size: 14pt">基于AJAX技术实现页面局部更新</span></strong></td>
            </tr>
            <tr>


                <td colspan="2" style="height: 85px">
                    请输入你所喜欢的动物种类</td>
                <td style="width: 460px; height: 85px">
                    <input id="txt" style="width: 245px" type="text" /></td>
            </tr>
            <tr>
                <td colspan="2" style="height: 85px">
                </td>
                <td style="width: 460px; height: 85px">
                    <input id="Submit1" type="submit"    onclick="getData()" ></td>
            </tr>
            <tr>
                <td style="height: 89px" colspan="2">
                    请选择你所喜欢的动物:</td>
                <td style="width: 460px; height: 89px">
                    <asp:DropDownList ID="DropDownList1" runat="server">
                    </asp:DropDownList></td>
            </tr>
        </table>

    
    </div>
    </form>
</body>


DataPage.aspx:
public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string sAnimal = Request.QueryString["sAnimal"];
        Response.Clear();
        switch (sAnimal.ToLower())
        {
            case "cat":
                Response.Write("Felix, John, Mary, Rossy");
                break;
            case "dog":
                Response.Write("Fido, Robver, Kissy");


                break;
            case "cow":
                Response.Write("Daisy, Mighty, Hassy, Hover");
                break;
            case "parrot":
                Response.Write("Polly, curo, paul, pazzy");
                break;
        }
    }
}


[解决办法]
 if(index>0)
  {
  ani=sAnimal.substring)0,index);
  sAnimal=sAnimal.substring(index+1);
  document.getElementById("DropDownList1").add(new option(ani,ani));
  }

颜色没有标上,你的语法有问题,写代码的时候细心点。
[解决办法]
应为你那个是提交按钮,添加完后自动提交表单了,而且你又启用了事件来源验证,所以出错,

参考ArgumentException: 回发或回调参数无效

热点排行