1
我有這種方法的一個問題:發送的請求體參數而不是查詢字符串
$.ajax({
url: '/SalesOfferInvoiceDeliveryNote/InsertUpdateCAORAC/?cTa=b&cHTML=' + cHTML,
type: 'POST',
data: $(this).parents('form').serialize()
//other part of method not shown, it's not relevant
在服務器端方法的簽名是這樣的:
public string InsertUpdateCAORAC(FormCollection form = null, string cTa = "", string cHTML = null)
我的問題是,cHTML等(它表示用於打印的動態創建表單的HTML)變得太快而不能通過查詢字符串發送。我希望這個參數在請求體內發送。我已經嘗試過:
$.ajax({
url: '/SalesOfferInvoiceDeliveryNote/InsertUpdateCAORAC/',
type: 'POST',
data: {
form: $(this).parents('form').serialize(),
cTa: 'b',
cHTML: cHTML
}
在這種情況下,參數CTA和cHTML正確sended,但表單元素失去所有它的序列化鍵。 (使用這種Ajax調用方式的鍵是:form,cTa和cHTML,這是完全錯誤的)。有什麼我可以做的發送查詢字符串正文內的所有參數,該表單不失去它的關鍵?
我收到此錯誤:遺漏的類型錯誤:非法調用 – FrenkyB
@FrenkyB錯誤是因爲你的服務器端** InsertUpdateCAORAC **錯誤。您需要刪除cta和chtml參數,因爲現在它們是表單的一部分,因此您可以像其他表單參數那樣獲取它們。讓我知道。謝謝 – gaetanoM