asp.net中的js如何调用后台函数

2024-11-30 08:40:42
推荐回答(2个)
回答1:

js调用后台函数需要用ajax方式,js本身是客户端产物,跟服务端交互需要ajax借口。
前台ajax:

$(function () {
$("#WFddlType").change(
function () {
$.ajax({
type: "Post",
url: "feeForm.aspx/FindLeftBudget", //页面名/要调用的后台方法名
data: "{'feeTypeID':'10021','costCenterID':'22322'}", //json格式的字符串将参数传入后台,参数名必须一致
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (result) {
$("#leftBudget").text(result.d); //将获取到的值赋值给前台的控件,这里的d,如果后台返回的不是json字符串,而仅仅是一个值,那么所返回的值就包括在名为d的属性中
(奇怪吧,我也觉得。。。)
},
error: function (err) {
alert(err);
}
});
});
});
后台C#:
[WebMethod]
public static string Find(string feeTypeID, string costCenterID)
{
if (BudgetControlFacade.Instance.Check(feeTypeID))
{
return BudgetControlFacade.Instance.FindBalance(feeTypeID, costCenterID).ToString();
}
else
{
return "+∞";
}
}

回答2:

//js部分

    $("#CompanyName").autocomplete("/TourOrder/Ajax/GetCompany.aspx", {
        width: 252,
        onItemSelect: selectItemForCompany
    });


function selectItemForCompany(li, $input) {
    $input.val($(li).find(".CompanyName").text());
    $("#CompanyID").val($(li).find(".CompanyID").text());
}
ajax