我正在尝试console.log一个已经从其他2个对象组合的对象。我第一次使用console.log(allObjects),它可以工作,我看到了:
对象{name:“david”,wineResults:“[{”Id“:158020,”Name“:”Antinori Tignanello 2013" , “U ...” 列表 “:[]},” 零售 “:NULL,” 年份 “:{” 清单 “:[]}}]”}
$(document).on('submit', '.add-item-form', function(event) {
event.preventDefault();
if (event.type === 'keypress' && event.which === 13 || event.type === 'submit') {
var name = $('#item-input').val();
var usersObject = {
"name": name
};
var searchArray = $('#search-results-array').val();
var searchArrayObj = {
"wineResults": searchArray
};
var allObjects = Object.assign(usersObject, searchArrayObj);
console.log(allObjects); // This one works great.
favDropDownItem(allObjects);
FavoritesList(allObjects);
$('#item-input').val('');
}
然后在下面的代码中,我试图将allObjects传递给我创建的链接,该链接显示在下拉菜单中。
function favDropDownItem(allObjects) {
var output = '';
output += "<a href='javascript:void(0)' class='dropbtn' onclick='myDropdown()'>Favorites</a>";
output += "<div class='dropdown-content' id='myDropdown'>";
output += "<p class='nameLink'>" + name + "</p>";
output += "<a href='#'>sample</a>";
output += "</div>";
$('li.dropdown').html(output);
$(".nameLink").on('click', function(allObjects) {
console.log(allObjects); // This one results in r.Event {originalEvent: MouseEvent, type: "click", target:
//p.nameLink, currentTarget: p.nameLink, relatedTarget: null…}
});
}
});
当我点击.nameLink时,我希望得到第一个console.log中出现的相同数据,但我看到了这个:
r.Event {originalEvent:MouseEvent,type:“click”,target:p.nameLink, currentTarget:p.nameLink,relatedTarget:null ...}
感谢任何帮助。
答案 0 :(得分:0)
更改事件参数名称
$(".nameLink").on('click', function(e) {
console.log(allObjects); //now you can get correct out put here
});