[英]How to fire a method in aspx.cs file using ajax
我想使用Ajax在PersonalDetails.aspx.cs頁面上調用一個方法 。 我嘗試使用以下代碼。 但它不起作用。 我只是想解雇PersonalDetails.aspx.cs中包含的方法我該怎么辦? :)有人可以幫助我。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function () {
$("input").keydown(function () {
$("input").css("background-color", "yellow");
});
$("input").keyup(function () {
$("input").css("background-color", "pink");
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "PersonalDetails.aspx/GetFarmersByName",
data: { name: +request.term },
dataType: "json",
async: true,
dataFilter: function (data) { return data; },
success: function (data) {
return data;
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
alert(errorThrown);
}
});
});
});
</script>
這是我想解雇的方法..
[WebMethod]
[ScriptMethod]
public bool GetFarmersByName(string name)
{
_personalData = new personalData();
int cky = 45;
CdMa cdMas = new CdMa();
cdMas = _personalData.getcdMasByConcdCd2(cky, "AdrPreFix", true);
int prefixKy = cdMas.CdKy;
List<FMISPersonalDataViewByName_Result> list = new List<FMISPersonalDataViewByName_Result>();
list = _personalData.GetPersonalDataByName(prefixKy, cky, name);
if (list != null)
{
grvPersonalData.DataSource = list;
grvPersonalData.DataBind();
return true;
}
return false;
}
Aarif Qureshi的回答應該是被接受的。
如果你運行你正在運行的東西,很可能你得到“ {”消息“:”無效的JSON原語:...... “?看起來你的數據對象格式不正確,它應該是數據:”{... “OR數據:JSON.stringify({...})
( 順便說一句也是錯誤的 - 已經指出了 )
請將您的方法GetFarmersByName設置為public static bool GetFarmersByName並嘗試調試代碼
並改變以下
data: "{name: " + request.term + "}"
,
[WebMethod]
[ScriptMethod]
public bool GetFarmersByName(string name)
此方法必須是公共靜態方法,如果要通過ajax調用它,則返回一些數據。
喜歡
[WebMethod]
[ScriptMethod]
public static bool GetFarmersByName(string name)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.