私はクライアント側で呼び出したいC#メソッドを持っています。 私はこのjavascriptからajaxを使用してC#メソッドを呼び出すことができません
function ValidateIfDuplicate()
{
debugger
var billtext = $("#ctl00_ContentPlaceHolder2_textBoxBillNumber").val();
var retailer= $("#ctl00_ContentPlaceHolder2_dropDownListRetailers").val();
var billdate = $("#ctl00_ContentPlaceHolder2_textBoxBillDate").val();
if (billtext == "")
{
alert("Bill Number cannot be left empty");
return false;
}
else if (retailer == 0) {
alert("Please select a Retailer");
return false;
}
else if (billdate == '') {
alert("Date cannot be left empty");
return false;
}
else if (billtext != '' && retailer != '' && billdate != '')
{
$.ajax({
Type: "POST",
url: "CAInvoiceEntry.aspx/ValidateDuplicateEntry",
contentType: "application/json; charset=utf-8",
data: { billtext1: billtext, billdate1: billdate, retailer1: retailer },
dataType: "json",
success: function (result) {
debugger
alert(result.d);
}
});
return true;
}
}
を達成するために呼び出し、AJAXを使用して、これは私のC#の方法
[System.Web.Script.Services.ScriptService]
public partial class CAInvoiceEntry: BaseClass
{
[WebMethod, ScriptMethod()]
public static int ValidateDuplicateEntry(string billtext1, string billdate1, string retailer1)
{
string validatebill = objCAInvoiceEntry.validatebilldate(textBoxBillNumber.Text, billdate1.ToString(), ViewState[AppConstants.UploadedBy].ToString(), dropDownListRetailers.SelectedValue);
if (validatebill == "1")
{
return 1;
}
else
return 0;
}
}
ですが、Webメソッドが発射されていません。 私は、代わりに(enablepagemethods = trueでスクリプトを登録することによって)pagemethods.methodname()を使用しようとしましたが、効果はありません。
誰かが私がどこでそれを間違っているかについて私を導くことができたら? ちょっとクリアしてください。 以下の画像では、ajax呼び出しがスキップされるブレークポイントの実行を見ることができます。
試してみる[System.Web.Script.Services.ScriptService】この方法は、あなたがブラウザ 'console'に何を得る –
に位置されているクラスに、この追加しますか? –
@ guruprasad raoデバッグと検証の際に、ブラウザ上に何も表示されず、コントロールがメソッドに渡されません。 –