我试图使用setInterval每X秒调用一次LoadFile()函数,我想在我的文档就绪函数中调用它,并且我的aspx页面上的scriptmanager将EnablePageMethods设置为true。 但这似乎不起作用并返回PageMethod未定义的错误。 我的代码如下:
<script type="text/javascript" >
$(document).ready(function () {
setInterval(function () {
PageMethods.LoadFile();
}, 1000);
});
</script>
[WebMethod]
public void LoadFile()
{
Collection<string> stringcollection = new Collection<string>();
divLogSummary2.InnerHtml = "";
try
{
StringBuilder content = new StringBuilder();
if (string.IsNullOrEmpty(logFilePath))
{
return;
}
if (File.Exists(logFilePath))
{
using (FileStream fs = new FileStream(logFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
using (StreamReader sr = new StreamReader(fs))
{
while (!sr.EndOfStream)
{
stringcollection.Add(sr.ReadLine());
}
}
}
for (int i = stringcollection.Count - 30 ; i < stringcollection.Count; i++)
{
divLogSummary2.InnerHtml = divLogSummary2.InnerHtml + " <BR> " + stringcollection[i];
}
}
}
catch (Exception)
{
}
}
我对Ajax相对较新,非常感谢任何帮助和见解。
谢谢,
答案 0 :(得分:0)
您的方法应声明为静态,以便与PageMethods一起使用。
[WebMethod]
public static void LoadFile()
{
.....
}
祝你好运