2016-12-29 2 views
2

Ich versuche console.log ein Objekt, das aus 2 anderen Objekten kombiniert wurde. Das erste Mal, dass ich console.log (allObjects), es funktioniert, und ich sehe dies:Object.assign Ergebnisse r.Event Objekt

Objekt {name: "david", wineResults: "[{" id ": 158020," Name ":" Antinori Tignanello 2013" , "U ..." Liste ": []}," Retail ": null," Jahrgänge ": {" Liste ": []}}]"}

$(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(''); 
    } 

Dann Im folgenden Code versuche ich, allObjects an einen Link zu übergeben, den ich erstelle und der in einem Drop-Down-Menü erscheint:

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…} 
     }); 
    } 

}); 

Wenn ich auf .nameLink klicken, würde ich hoffen, dass die gleichen Daten zu erhalten, die in der ersten console.log erschien, sondern sehe ich diese:

r.Event {originalEvent: Mouseevent, Typ: "Klick", Ziel: p.nameLink, current: p.nameLink, related: null ...}

jede mögliche Hilfe schätzen.

Antwort

0

Änderung der Ereignisparameter Name

 $(".nameLink").on('click', function(e) { 
      console.log(allObjects); //now you can get correct out put here 
     }); 
Verwandte Themen