问题描述
我正在将(书的返还日期)发送给javascript函数。
<td onclick="setApproved(@item.SchoolBook.Id,0,@item.Requestor.Id,@item.ExpectedReturnDate)"><button class="button-green" title="Approve">Approve</button></td>
调试时,我看到正确显示了@ item.ExpectedReturnDate这是一个字符串,但是该函数完全接收其他内容。 例如:@ item.ExpectedReturnDate为2019-06-27,javascript函数接收1986。Javascript函数:
function setApproved(bookId, type, requestorId,erd) {
$.ajax({
type: "get",
url: "/Books/SetApproved",
dataType: "json",
data: {
bookId: bookId,
type: type,
requestorId: requestorId,
erd: erd
},
success: function (response) {
if (response == "success")
//reload page
location.href = `/Books/BooksToLend`;
else
if (response == "fail")
//load error page
location.href = `/User/Error`;
},
failure: function (response) {
location.href = `/User/Error`;
},
error: function (response) {
location.href = `/User/Error`;
}
});
}
以下是浏览器中调试的快照:
发送到功能
接收什么功能
我将不胜感激。 谢谢
1楼
JV Lobo
0
已采纳
2019-02-24 23:57:41
问题是您发送的日期像数字一样,但是却带有-字符。
为了使其正常工作,您应该将日期作为字符串发送,或者创建一个新的Date对象。
像这样:
setApproved(5, 0, 323214, 2019-06-27) setApproved(5, 0, 323214, '2019-06-27') setApproved(5, 0, 323214, new Date('2019-06-27')) function setApproved(bookId, type, requestorId,erd) { console.log(bookId); console.log(type); console.log(requestorId); console.log(erd); }