ここでは長時間のWinFormプログラマーが、Webプログラミングシーンでは初めてです。私はVisual Studio 2010を持っており、新しいWebSiteプロジェクトを作成しました。 私は作成したWebメソッドを呼び出すためにajaxを取得することはできません。ページ上の自分のボタンをクリックすると何も起こりません。javascript関数からjqueryによってWebメソッドが呼び出されない
WebSiteプロジェクトを作成すると、jquery 1.4.1がScriptsフォルダに自動的に追加されるようです。私は2個のスクリプトタグを追加Default.aspxので
:
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript" src="Scripts/Process.js">
を私はonclickの機能がProcess.jsに定義されている場所にページ上のボタンを配置:プロセスで
<input id="btnTest" type="button" value="Test" onclick="btnTest_onclick()" />
を。 Default.aspx.csで
function btnTest_onclick() {
var strData = JSON.stringify({
userid: 5
});
alert(strData);
$.ajax({
url: 'Default.aspx/GetData',
type: "POST",
data: strData,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: Success,
failure: Failure,
async: true
});
}
function Success(data) {
alert("success");
}
function Failure(data) {
alert("failure");
}
:JS私は、次のコードを持っている
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod()]
public static string GetData(int id)
{
return "hello, my id is " + id;
}
}
あなたが知っている...することができます最新の安定バージョンのjQueryを取得(またはそれを行うためにUIを使用し、あるいはスクリプトを置き換えることによって、それを手動で行うには、コンソールでは常に 'アップデート・パッケージjquery'ファイル) – MilkyWayJoe
また、[$ .ajax](http://api.jquery.com/jQuery.ajax/)の正しいコールバックは 'error'であり、' failure'ではありません。それを交換してください。 – MilkyWayJoe
1.4.1は安定していませんか?私はMSがそれが安定していなければならないと仮定して自動的にあなたのためにそれを含めるようだと思います。それは私にそれが失敗していることを示すのに役立った、ありがとう。今なぜ私はそれが失敗しているのかを理解する必要があります:) – user441521