如何在 ajax jquery 调用中传递 NULL 值?
How to pass NULL value in ajax jquery call?
我的 Ajax post 通话有问题。我有两个字段,一个用于金额,一个用于日期时间。我希望能够将这两个值都作为空值传递,并且程序不应该崩溃。我的 C# 方法头看起来像这样
public ActionResult Update(int invoiceNumber, DateTime start,decimal payAmount = 0)
我的 Jquery 代码如下所示
$(document.body).on("click", ".changeInvoice", function (e) {
e.preventDefault();
var invoiceNr = $("#invoiceNumber").val();
var start = $("#date").val();
var payAmount = $("#payAmount").val();
console.log(invoiceNr);
var updateInvoice =
{
invoiceNumber: invoiceNr,
start: start,
payAmount: payAmount
}
$.ajax({
type: "POST",
url: "URL",
data: updateInvoice,
success: function (response) {
location.reload();
}
});
如果我 运行 如果用户不填写开始日期时间值,程序现在会崩溃。但是如果我设置一个日期时间呢?从我的 C# 代码开始,验证工作没有崩溃,但后来我无法在我的 C# 代码中执行此操作。据我了解,您不能将天数添加到可为 null 的日期时间变量。有什么建议吗?:
i.FirstReminderDate = start.Date.AddDays(10);
我需要在将可为空的日期时间设置为参数后转换日期时间值,因此:
public ActionResult Update(int invoiceNumber, DateTime? start,decimal payAmount = 0)
{
i.FirstReminderDate = Convert.ToDateTime(start).Date.AddDays(10);
}
然后一切正常
并且取决于您想要设置初始日期的时间,也可以是从今天开始的 10 天,因为默认日期是:1/11/0001 12:00:00 AM,添加 10 天没有意义到这个日期,但是如果你想设置像今天这样的初始日期可以是
DateTime firstReminderDateFromToday = DateTime.Now.Date.AddDays(10);
if (start != null)
i.firstReminderDate = Convert.ToDateTime(start).Date.AddDays(10);
else
i.firstReminderDate = firstReminderDateFromToday;
我的 Ajax post 通话有问题。我有两个字段,一个用于金额,一个用于日期时间。我希望能够将这两个值都作为空值传递,并且程序不应该崩溃。我的 C# 方法头看起来像这样
public ActionResult Update(int invoiceNumber, DateTime start,decimal payAmount = 0)
我的 Jquery 代码如下所示
$(document.body).on("click", ".changeInvoice", function (e) {
e.preventDefault();
var invoiceNr = $("#invoiceNumber").val();
var start = $("#date").val();
var payAmount = $("#payAmount").val();
console.log(invoiceNr);
var updateInvoice =
{
invoiceNumber: invoiceNr,
start: start,
payAmount: payAmount
}
$.ajax({
type: "POST",
url: "URL",
data: updateInvoice,
success: function (response) {
location.reload();
}
});
如果我 运行 如果用户不填写开始日期时间值,程序现在会崩溃。但是如果我设置一个日期时间呢?从我的 C# 代码开始,验证工作没有崩溃,但后来我无法在我的 C# 代码中执行此操作。据我了解,您不能将天数添加到可为 null 的日期时间变量。有什么建议吗?:
i.FirstReminderDate = start.Date.AddDays(10);
我需要在将可为空的日期时间设置为参数后转换日期时间值,因此:
public ActionResult Update(int invoiceNumber, DateTime? start,decimal payAmount = 0)
{
i.FirstReminderDate = Convert.ToDateTime(start).Date.AddDays(10);
}
然后一切正常
并且取决于您想要设置初始日期的时间,也可以是从今天开始的 10 天,因为默认日期是:1/11/0001 12:00:00 AM,添加 10 天没有意义到这个日期,但是如果你想设置像今天这样的初始日期可以是
DateTime firstReminderDateFromToday = DateTime.Now.Date.AddDays(10);
if (start != null)
i.firstReminderDate = Convert.ToDateTime(start).Date.AddDays(10);
else
i.firstReminderDate = firstReminderDateFromToday;