2017-05-09 1 views
-1

Unter der else-Anweisung kann ich nicht herausfinden, wie den Wert von userChoice in das jquery-Objekt ".unit" übergeben, so dass die Anzahl der Divs in .unit durch die angegebene Anzahl bestimmt werden vom Benutzer. $ pallet existiert als div container im html. Jede Hilfe wird sehr geschätzt!Benutzer Wert in jquery Objekt übergeben

$(document).ready(function() { 
    for (var x = 0; x < 16; x++) { 
    for (var y = 0; y < 16; y++) { 
     var unit = $("<div class='unit'></div>"); 
     unit.appendTo('#pallet'); 
    } 
    } 
    $(".unit").hover(function() { 
    $(this).css("background-color", "black"); 

    }); 
    document.getElementById("reset").onclick = gridReset; 

    function gridReset() { 
    var userChoice = prompt("Between 1 and 64 how big would you like your grid?"); 

    if (isNaN(userChoice)) { 

     alert(userChoice + " is not a number"); 

    } else if (userChoice >= 65 || userChoice <= 0) { 

     alert("Choose a number between 1 and 64"); 

    } else { 

     $(".unit").css("background-color", "blue"); 
    } 
    } 
}); 
+0

* "Ich kann nicht herausfinden, wie der Wert von userChoice passieren in das jquery-Objekt ".unit", so dass die Anzahl der divs, die in .unit gespeichert sind, durch die vom Benutzer angegebene Anzahl bestimmt wird. "* macht für mich keinen großen Sinn, ohne eine Reihe von Annahmen zu treffen. Was wolltest du mit dieser Nummer machen? ein neues Gitter erstellen? Wo ist der Code, der das tun würde (oder was auch immer du mit dieser Nummer machen wolltest)? –

Antwort

0

Sie können einfach versteckte Eingabe in Ihrem Div festlegen, wo Sie den Wert behalten können.

var unit = $("<div class='unit'><input type='hidden' class='unit-value'/></div>"); 

und in Ihrer else-Anweisung:

$(".unit").css("background-color", "blue"); 
$(".unit-value").val(userChoice); 
-1

Verwendung $(".unit").data("userChoice", userChoice); dann können Sie diese als var userChoice = $(".unit").data("userChoice"); an jedem Ort nennen

Verwandte Themen