我正在使用JavaScript和parse.com
以下代码未在控制台日志中返回任何错误,并且正在按预期在parse.com中创建新对象(在myBadges下)。但由于某种原因,“BadgeName”未被捕获并显示为“未定义”。
应从“badgeselected”变量填充“BadgeName”列。但是“BadgeName”似乎没有被捕获为变量?
任何人都可以帮助我理解为什么会这样吗?
以下是parse.com后端的屏幕截图。
var badgeselected = $("#go").attr("src");
var MyBadges = Parse.Object.extend("myBadges");
var userbadges = new MyBadges();
$(document).ready(function () {
$("#send").click(function () {
userbadges.set("BadgeName", badgeselected);
console.log("done");
userbadges.save(null, {
success: function (results) {
// The object was saved successfully.
location.reload();
},
error: function (contact, error) {
// The save failed.
// error is a Parse.Error with an error code and description.
alert("Error: " + error.code + " " + error.message);
}
});
});
});
答案 0 :(得分:2)
您的第一行var badgeselected = $("#go").attr("src");
也必须存在于$(document).ready
回调中。
该回调的全部意义在于确保DOM已准备好供您访问。您已经在回调中放置了您的DOM访问代码的一些,但不是全部。