我在教自己如何使用ASP.NET,我试图在.aspx文件中的JS函数中调用C#函数。未捕获的参考错误:函数未定义(ASP.NET)
这里是我的JS部分:
<script type="text/javascript">
function Run() {
alert("Running!")
var ranking = parseInt(document.getElementById("rank").value);
var collsize = parseInt(document.getElementById("size").value);
var collsafety =
parseInt(document.getElementById("safety").value);
var best = PageMethods.Survey(ranking, collsize, collsafety);
document.write(best);
}
</script>
的C#函数的签名(它嵌入在像JS功能.aspx文件):
<script language="c#">
[System.Web.Services.WebMethod]
public static string Survey(int ranking, int collsize, int
collsafety) {
....
}
确切的错误信息是:未捕获ReferenceError:PageMethods.Survey未定义。
我用一个按钮使用onclick调用Run方法。我知道该方法已输入,因为发生了第一个警报。但是,当我尝试调用调查时,出现错误。
我已经阅读了几个答案,像这样:jquery PageMethod saying the method does not exist,但建议的AJAX也没有工作。我也读过这个:https://www.codeproject.com/Questions/561226/errorpluspageMethodplusisplusundefined但我看不到我没做对的东西...
其实我切换到AJAX,现在它不扔特定的错误(我没有做正确的AJAX第一次)。但现在我得到一个POST 404 Not Found错误:( –
你可以用AJAX做到这一点,但我简化了我的解释,因为你问如何调用js函数上的c# –
谢谢你知道什么可能导致AJAX错误,在任何机会?(代码在下一个评论 - 对格式化的歉意) –