none
javascript调用后台方法 RRS feed

  • 问题

  • 前台需要调用后台的一个方法

    前台代码

     <script language="javascript">
     function BindListEmp()
     {
      var DeptID=document.getElementById("ddlDept").value;
      var obj=Ajax.AjaxMethod.GetEmpByDeptID(DeptID);
      if(obj.value!=null)
      {
      document.all("listEmployees").length=0;
      var ds=obj.value;
      
      if(ds != null && typeof(ds) == "object" && ds.Tables != null)
      {
       for(var i=0; i<ds.Tables[0].Rows.length; i++)
     {
     var name=ds.Tables[0].Rows[i].EmpName;
     var id=ds.Tables[0].Rows[i].EmpID;
     document.all("listEmployees").options.add(new Option(name,id));
     }
      }
      else
      {
      }
      }
      else
      {
      }
     }
     </script>
    主要是

    var obj=Ajax.AjaxMethod.GetEmpByDeptID(DeptID);
    这块是要调用后台AjaxMethod.GetEmpByDepteId
    [Ajax.AjaxMethod]
    public DataSet GetEmpByDeptID(string DeptID)
    {
    try
    {
    string SQL_SELECT_DEPARTMENTNAME_BY_ID = "select departmentName from departmentInfo where departmentId=";
    int IntDeptID = int.Parse(DeptID);
    DataSet ds = new DataSet();
    ds = DBOperation.GetDataSet(DBOperation.CONN_STRING_NON_DTC, CommandType.Text, SQL_SELECT_DEPARTMENTNAME_BY_ID + IntDeptID, null);
    return ds;
    }
    catch (Exception ex)
    {
    string str = ex.Message;
    return null;
    }
    }
    总是提示我Ajax未定义?请问怎么解决这个问题?是不是我的命名空间有问题了?

    2010年7月16日 9:08

答案

全部回复