如何将dropdownlist调用到静态方法中
本文关键字:静态方法 调用 dropdownlist | 更新日期: 2024-10-18 23:39:05
我有一个静态方法,即
[System.Web.Script.Services.ScriptMethod()]
[System.Web.Services.WebMethod]
public static List<string> GetWorkPackages(string prefixText)
{
DataTable dt = getWorkpackages(ddlWp.SelectedValue);
List<string> wps = new List<string>();
for (int i = 0; i < dt.Rows.Count; i++)
{
wps.Add(dt.Rows[i][1].ToString());
}
return wps;
}
此处错误发生在ddlWp.SelectedValue(当前上下文中不存在名称"ddlWp")
ddlWp是我的asp控制下拉列表
如何在静态方法中传递下拉列表?
您可以将列表从调用web方法的位置返回到ajax,并将其从ajax本身绑定。控件不会进入web方法。
Adil在此处回答时
Dropdownlist对象是类(网页)的非静态成员,静态方法不能访问非静态成员。在调用静态方法时,将dropdownList值传递给它。
静态成员
静态方法和属性无法访问非静态字段和事件的包含类型,并且它们无法访问实例任何对象的变量,除非它在方法中显式传递参数
由于它只被调用一次,您可以将值本身传递给
public static List<string> GetWorkPackages(string prefixText, string ddlVal)
{
DataTable dt = getWorkpackages(ddlVal);
List<string> wps = new List<string>();
for (int i = 0; i < dt.Rows.Count; i++)
{
wps.Add(dt.Rows[i][1].ToString());
}
return wps;
}