jQuery.validator.addMethod('priceonrange', function (value, element, params) { var minPrice = parseFloat(params['minprice'], 10); var maxPrice = parseFloat(params['maxprice'], 10); var parsedValue = parseFloat(value, 10); if (parsedValue > maxPrice || parsedValue < minPrice) { return false; } return true; }); var setValidationValues = function (options, ruleName, value) { options.rules[ruleName] = value; if (options.message) { options.messages[ruleName] = options.message; } }; var $Unob = $.validator.unobtrusive; $.validator.unobtrusive.adapters.add("priceonrange", ["minprice", "maxprice"], function (options) { var value = { minprice: options.params.minprice, maxprice: options.params.maxprice }; setValidationValues(options, "priceonrange", value); });