Edit in JSFiddle

var calc = function() {
    var factorial = function(val) {
        if ($.isNumeric(val)) {
            val = parseInt(val);
            if (val < 0) {
                return "invalid value";
            } else if (val === 1 || val === 0) {
                return 1;
            } else {
                return val * factorial(val - 1);
            }
        }
        return "value passed is not valid";
    };

    return {
        factorial: factorial
    };
}();

$("#btnFactorial").click(function() {
    $("#output").html('').append(calc.factorial($("#ip").val()));
});
<input type="textbox" id="ip"/> <br/>
<input type="button" id="btnFactorial" value="Factorial"/>
<div id="output"></div>
input, div{margin:10px}