Я получил этот JQuery скриптКак остановить отображение NaN в результатах?
$(document).ready(function() {
$(function(){
$("#result").submit(function(e) {
e.preventDefault();
var ele = $("#element").val(),
target = $("#target").val(),
context = $("#context").val(),
border = $("#border").val(),
margin = $("#margin").val(),
padding = $("#padding").val();
console.log(ele, target, context, border, margin, padding);
var DoubleMargin = parseInt(margin, 10) * 2;
var DoublePadding = parseInt(padding, 10) * 2;
var DoubleBorder = parseInt(border, 10) * 2;
var ActualTarget = parseInt(target, 10) - parseInt(DoubleBorder, 10) - parseInt(DoubleMargin, 10) - parseInt(DoublePadding, 10) * 1;
var result3 = parseInt(target, 10) - parseInt(DoubleMargin, 10) * 1;
var MarginResult = parseInt(margin, 10)/parseInt(target, 10) * 100;
var PaddingResult = parseInt(padding, 10)/parseInt(target, 10) * 100;
var OriginalResult = parseInt(ActualTarget, 10)/parseInt(context, 10) * 100;
var BorderResult = parseInt(target, 10) - parseInt(border, 10) * 1;
//$(".result").append(ele + " " + result + "%");
$("<p></p>", {
html: ele + " {<br><span>width: " + OriginalResult + "%;" + " /* " + ActualTarget + " (originally " + target + ")/" + context + " */ " + "<br>border: " + border + "px; " + "<br>margin: " + MarginResult + "%; " + "<br>padding: " + PaddingResult+ "%;" + "<br> </span>}"
}).hide().appendTo("#code-results").fadeIn();
});
});
});
Но когда кто-то не входит в число вообще я получаю NaN в результатах? Как мне избавиться от этого кода? Также я хочу, чтобы 0 все еще отображалось как 0, возможно с этим?
Редактировать: на самом деле я бы хотел, чтобы кто-то не вводил число, а не NaN, я получаю 0 в результате, возможно ли это?
Если вы всегда хотите результатов, вы также можете префикс ваших числовых переменных с помощью '>>> 0', что приводит к неправильным номерам в 0. Побочный эффект: диапазон номера будет' [0, 4294967295] '. –