Saya memiliki kode jquery berikut untuk memanggil metode web di halaman aspx
$.ajax({
type: "POST",
url: "popup.aspx/GetJewellerAssets",
contentType: "application/json; charset=utf-8",
data: '{"jewellerId":' + filter + '}',
dataType: "json",
success: AjaxSucceeded,
error: AjaxFailed
});
dan inilah tanda tangan metode web
[WebMethod]
public static string GetJewellerAssets(int jewellerId)
{
Ini bekerja dengan baik.
Tapi sekarang saya perlu mendapatkan dua parameter yang diteruskan ke metode web
metode web baru terlihat seperti ini
[WebMethod]
public static string GetJewellerAssets(int jewellerId, string locale)
{
}
Bagaimana cara mengubah kode klien agar berhasil memanggil tanda tangan metode baru ini?
EDIT:
2 sintaks berikut berfungsi
data: '{ "jewellerId":' + filter + ', "locale":"en" }',
dan
data: JSON.stringify({ jewellerId: filter, locale: locale }),
dengan filter dan lokal adalah variabel lokal
JSON.stringifydengan literal objek, Anda HARUS menyertakan nama parameter dengan titik dua, semuanya dibungkus di dalam tanda {}kurung. Menggunakan JSON.stringify(objectLiteral)tidak berhasil.
[WebMethod] [ScriptMethod(UseHttpGet = true)] public static string TestIBAN(string ccc)?
data: JSON.stringify({ jewellerId: filter, locale: locale })adalah cara terbaik yang saya temukan, Terima @ChrisCa