我正在設置PageMethods以使用JavaScript訪問服務器端代碼。我在使用螢火蟲進行調試時收到錯誤「PageMethods is not defined」。服務器端代碼也沒有被觸發。PageMethods未定義
我已經將我的腳本管理器「EnablePageMethods」設置爲true。我的方法是公開的& static,並且它也設置了WebMethod屬性。我仍然收到上述錯誤。這可能是因爲腳本管理器中,有兩個孩子的母版頁,然後我的網頁被稱爲頂層母版頁是的:
即
主要母版頁(使用腳本管理器) - >主母版頁 - >二級母版頁 - >我的網頁 - >(具有的WebMethod)我的用戶控制
是否有可能THT層次結構是造成這個問題?
這是將WebMethod
[System.Web.Services.WebMethod]
public static void AddNote(string t)
{
int propid = 1;
if (propid > 0)
{
//Call my method
}
}
這是我的javascript代碼:
function editNodes(t) {
alert('test1');
alert(t);
PageMethods.AddNote(t,OnSuccess,OnFailure);
alert('method called');
}
function OnSuccess() {
alert('Success');
if (!navigator.appName == 'Microsoft Internet Explorer') {
window.location.href = window.location.href;
}
}
function OnFailure(error) {
alert('Error:' + error);
}
這就是我稱之爲:
<a href="#" class="btngeneral" onclick="javascript:editNodes(2);">Save</a>
能否請您粘貼在這裏,你使用壽訪問客戶端頁面方法的代碼? – 2011-04-28 12:08:11
添加了代碼。請檢查 – ria 2011-04-28 12:17:14
確保腳本管理器標籤位於頂層頁面,在您的情況下是主頁面。 – 2011-04-28 12:56:31