css - JavaScript outputting a deck floor plan -
i'm new javascript. need output floor plan of deck following calculation of how many boards needed, given deck length , width, along board length , width. calculations work floor plan not outputting correctly. should change in last loop output plan?
for example if there 10 8x1-foot boards 16x5 foot deck, might
-------- --------
-------- --------
-------- --------
-------- --------
-------- --------
my code below. have loop give me board of "---" based on board length. underneath sad loop trying output floor plan of based on width of deck(deckwidth) , length of (decklength).
$(document).ready(function() { var deckarea; var boardarea; var numboards; var total; var dlength; var dwidth; var blength; var bwidth; var bprice; var planboard = ""; $("#decklength").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { dlength = parsefloat(this.value); } }); $("#deckwidth").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { dwidth = parsefloat(this.value); } }); $("#boardlength").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { blength = parsefloat(this.value); } }); $("#boardwidth").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { bwidth = parsefloat(this.value); } }); $("#boardprice").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { bprice = parsefloat(this.value); } }); $("#deckcalc").on("click", function () { numboards = 0; total = 0; deckarea = dlength * dwidth; boardarea = blength * bwidth; numboards = deckarea/boardarea; total = numboards * bprice; //output total screen $("#cost").text("$"+total.tofixed(2)); $("#boardsneeded").text(numboards); for(var y = 0; y < (blength); y++) { planboard += "-"; } for (var = 0; < dlength; i++) { "<br>"; for (var x = 0; x < dwidth; x++) { document.getelementbyid("plan").innerhtml = planboard; } } }); }); <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <label>deck length</label><input type="text" id="decklength" /> <label>deck width</label><input type="text" id="deckwidth" /> <label>board length</label><input type="text" id="boardlength" /> <label>board width</label><input type="text" id="boardwidth" /> <label>board price</label><input type="text" id="boardprice" /> <button id="deckcalc">calcit</button> <div id="plan"></div>
in loop you're overwriting .innerhtml property every time through. want add property instead using +=:
also, noted in comments, want add <br /> tag output well.
$(document).ready(function() { var deckarea; var boardarea; var numboards; var total; var dlength; var dwidth; var blength; var bwidth; var bprice; var planboard = ""; $("#decklength").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { dlength = parsefloat(this.value); } }); $("#deckwidth").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { dwidth = parsefloat(this.value); } }); $("#boardlength").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { blength = parsefloat(this.value); } }); $("#boardwidth").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { bwidth = parsefloat(this.value); } }); $("#boardprice").keyup(function(){ if((isnan(this.value) === false) && this.value !== "") { bprice = parsefloat(this.value); } }); $("#deckcalc").on("click", function () { numboards = 0; total = 0; deckarea = dlength * dwidth; boardarea = blength * bwidth; numboards = deckarea/boardarea; total = numboards * bprice; //output total screen $("#cost").text("$"+total.tofixed(2)); $("#boardsneeded").text(numboards); for(var y = 0; y < (blength); y++) { planboard += "-"; } for (var = 0; < dlength; i++) { planboard += "<br>"; for (var x = 0; x < dwidth; x++) { document.getelementbyid("plan").innerhtml += planboard; } } }); }); <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <label>deck length</label><input type="text" id="decklength" /> <label>deck width</label><input type="text" id="deckwidth" /> <label>board length</label><input type="text" id="boardlength" /> <label>board width</label><input type="text" id="boardwidth" /> <label>board price</label><input type="text" id="boardprice" /> <button id="deckcalc">calcit</button> <div id="plan"></div>
Comments
Post a Comment