2017-04-09 2 views
0

Ich versuche, den Eingabewert eines untergeordneten Elements aus automatisch generierten Elementen in meinem Dokument abzurufen, um seine Werte zu verwenden, aber ich habe Probleme beim Zugriff auf das Kind. Wie kann ich dies tun? (Im sehr neu zu JS)Abrufen des versteckten Eingabewerts eines automatisch generierten Eltern-Kindes?

var createCard = function (num, x) { 
var div = document.createElement('div'); 
var classN = "card" + num; 
var classX = "card" + x; 
div.className += classX; 
div.className += " card "; 
div.className += classN; 
div.style.opacity ="1" 
div.addEventListener("click", function (e) { 
    var div = $(e.target); 
    var n = div.firstElementChild.value; //here lies the suspected problem 
    if (div.css('opacity') == "0.3") { 
     div.css('opacity', "1"); 
     aNum(n); 
    } 
    else { 
     div.css('opacity', "0.3"); 
     mNum(n); 
    } 
}); 

var worth = document.createElement('input') 
worth.setAttribute('type', 'hidden'); 
worth.setAttribute('value', num); 

div.appendChild(worth); 
document.getElementById('gameArea').appendChild(div); 
}; 
+0

Wie rufst du 'createCard' an? – brk

Antwort

0

Sie können JQuery verwenden, um ein Element des Kindes zu wählen.

Es gibt mehrere Möglichkeiten, um dies zu realisieren, but I'd suggest checking out Jquery Selectors.

Ich glaube, die Wähler für ein Kind eines Elements .children wird (": first")

So würden Sie tun

var child = $("MyDivSelector").children(":first"); 
+0

Yup Verwenden von 'var child = $ (" MyDivSelector "). Children (": first "). Val();' arbeitete Vielen Dank :) – Tristen

+0

Kein Problem, froh, geholfen zu haben! –

0

die ID für die Eingabe Set

worth.setAttribute('id', 'hidworth'); 

den Eingang Get

var hidWorth=document.getElementById('hidWorth'); 
Verwandte Themen