首页 > 解决方案 > 无法向控制器发出 ajax 发布请求

问题描述

<script>
  function AddPayment() {

    debugger;
    var jsonData = JSON.stringify({
      "DefaultCashAccount": $("#hdnDefaultCashAccount").val(),
      "BillId": $("#lblBillId").val(),
      "PaymentMethodValue": $("#ddPaymentMethod").val(),
      "PaymentMethodName": $("#ddPaymentMethod option:selected").html(),
      "Amount": $("#textBoxAmount").val(),
      "Rounding": $("#txtRounding").val(),
      "CurrencyName": $("#ddcurrency").val(),
      "CurrencyValue": $("#ddcurrency option:selected").html(),
      "BankAccountId": $("#ddBankAccount").val(),
      "BankAccountName": $("#ddBankAccount option:selected").html(),
      "PrivateNotes": $("#lblPrivateNotes").val(),
      "DueDate": ("#lblDueDate").val(),
      "Balance": ("#lblBalance").val(),
    });
    $.ajax({
      type: "Post",
      url: "/BillDetailAndPayment/btnSavePayment_Click",
      async: false,
      contentType: "application/json; charset=utf-8",
      dataType: "json",
      data: jsonData,
      success: function(data) {},
      error: function(msg) {
        debugger;
      }
    });

  } 
</script>

[HttpPost]
public ActionResult btnSavePaymentClick(BillDetailAndPaymentModel model) {
  //string val = lblBillId.Text;
  var bill = ((Bill) Session["billObj"]);

  CreateBillPaymentCreditCard(bill, model);
  return RedirectToAction("UploadHistory", "UploadHistory");
  // ClearControls();
  // Page.ClientScript.RegisterStartupScript(this.GetType(), "myScript", "checkValidation();", true);
}

}

public class BillDetailAndPaymentModel {

  public string DefaultCashAccount {
    get;
    set;
  }
  public string BillId {
    get;
    set;
  }
  public SelectListItem PaymentMethod {
    get;
    set;
  }
  public SelectListItem Currency {
    get;
    set;
  }
  public SelectListItem BankAccount {
    get;
    set;
  }
  public string Amount {
    get;
    set;
  }
  public string Rounding {
    get;
    set;
  }

  public string PaymentMethodId {
    get;
    set;
  }
  public string PaymentMethodValue {
    get;
    set;
  }
  public string CurrencyName {
    get;
    set;
  }
  public string CurrencyValue {
    get;
    set;
  }
  public string BankAccountId {
    get;
    set;
  }
  public string BankAccountName {
    get;
    set;
  }
  public string PrivateNotes {
    get;
    set;
  }
  public DateTime DueDate {
    get;
    set;
  }
  public decimal Balance {
    get;
    set;
  }
  public EntityStatusEnum status {
    get;
    set;
  }
  public string PrivateNote {
    get;
    set;
  }
}

嗨,上面是我的 ajax 发布和控制器代码以及我的模型。我正在尝试向控制器操作发出 ajax 发布请求,但我无法做到这一点。我陷入了这个问题,因为我试图根据我的知识。我无法向控制器操作发出 ajax 发布请求。请帮助提供最佳答案。提前致谢。

标签: jqueryasp.net-mvc

解决方案


推荐阅读