ฉันมีรหัส jquery ต่อไปนี้เพื่อเรียกใช้ webmethod ในหน้า aspx
$.ajax({
type: "POST",
url: "popup.aspx/GetJewellerAssets",
contentType: "application/json; charset=utf-8",
data: '{"jewellerId":' + filter + '}',
dataType: "json",
success: AjaxSucceeded,
error: AjaxFailed
});
และนี่คือลายเซ็นวิธีการเว็บ
[WebMethod]
public static string GetJewellerAssets(int jewellerId)
{
ใช้งานได้ดี
แต่ตอนนี้ฉันต้องส่งพารามิเตอร์สองตัวไปยังวิธีการเว็บ
วิธีการเว็บใหม่มีลักษณะดังนี้
[WebMethod]
public static string GetJewellerAssets(int jewellerId, string locale)
{
}
ฉันจะเปลี่ยนรหัสไคลเอนต์เพื่อเรียกลายเซ็นวิธีใหม่นี้ได้สำเร็จได้อย่างไร
แก้ไข:
2 ไวยากรณ์ต่อไปนี้ใช้งานได้
data: '{ "jewellerId":' + filter + ', "locale":"en" }',
และ
data: JSON.stringify({ jewellerId: filter, locale: locale }),
โดยที่ตัวกรองและโลแคลเป็นตัวแปรท้องถิ่น
data: JSON.stringify({ jewellerId: filter, locale: locale })
เป็นวิธีที่ดีที่สุดที่ฉันทุกคนพบขอบคุณ @ChrisCa