我正在面对这个问题,并且是Javascript和NodeJS的新手,下面我在/update/:id
的Route上有此代码
controller.save = (req, res) => {
const data = req.body
const name = req.body.name
const cpf = req.body.cpf
req.getConnection((err, connection) => {
const query = connection.query(
`INSERT INTO clientes(Nome, CPF)
VALUES('${name}','${cpf}')`,
data,
(err, clientes) => {
res.json(clientes)
}
)
})
}
,我有一个带有称为“更新”的按钮的表单,当我单击时,AJAX完成了此操作。
$(document).on("click", ".update", function() {
var user_id = $(this).attr("id")
$.ajax({
url: "/update/" + user_id,
method: "GET",
dataType: "json",
success: function(to) {
alert(to)
}
})
})
我收到警报[Object Object]
,当我转到网络响应时,我收到以下消息:
[{"ID":5,"Nome":"tobiaas","CPF":"107"}]
将警报更改为alert(to.Nome)
时,我会收到警报Undefined
我不想使用.map,因为我认为这是一种简单的工作方式。
答案 0 :(得分:0)
您将收到一个数组作为响应,Array.Nome
不存在,您的输出是正常的。
您需要使用response[0]
或response.pop()
获取该项目才能访问它:
success: function(response) {
const to = response[0]
alert(to.Nome)
}
有关javascript数组访问的更多信息,请参见W3School