我正在查看一些我只能假设一次有效的旧代码。
我的页面.aspx:
function GetCompanyList(officeId) {
var companyList = document.getElementById('<%= CompanyDropDown.ClientID %>');
if (companyList.length == 0)
PageMethods.GetCompanyList(officeId, OnGetCompanyList);
else
EditCompany();
}
和:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />
后面的代码:
[System.Web.Services.WebMethod()]
[System.Web.Script.Services.ScriptMethod()]
public IEnumerable<CompanyMinimum> GetCompanyList(int officeId) {
return (
from c in Repository.Query<Company>()
where !c.IsDeleted && c.TypeEnumIndex == (short)CompanyRelationshipType.Hotel
select new CompanyMinimum() {
id = c.Id,
desc = c.Description
}
).ToList();
}
PageMethods.GetCompanyList()
但是在第一个片段中调用时,Chrome 报告:
PageMethods 未定义
任何人都可以看到发生了什么变化以防止它起作用吗?
注意:我发现了类似的问题,但它们似乎都与此代码在母版页或用户控件中不起作用有关,这里不是这种情况。