typescript-closure-tools
Version:
Command-line tools to convert closure-style JSDoc annotations to typescript, and to convert typescript sources to closure externs files
231 lines (227 loc) • 7.28 kB
text/typescript
/// <reference path="../jquery/jquery.d.ts"/>
/// <reference path="../jquery.form/jquery.form.d.ts"/>
/// <reference path="jquery.validation.d.ts" />
function test_validate() {
$("#commentForm").validate();
$(".selector").validate({
debug: true
});
$(".selector").validate({
submitHandler: function (form) {
$(form).ajaxSubmit();
}
});
$(".selector").validate({
invalidHandler: function (form, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
var message = errors == 1
? 'You missed 1 field. It has been highlighted'
: 'You missed ' + errors + ' fields. They have been highlighted';
$("div.error span").html(message);
$("div.error").show();
} else {
$("div.error").hide();
}
}
});
$("#myform").validate({
ignore: ".ignore"
});
$(".selector").validate({
rules: {
name: "required",
email: {
required: true,
email: true
}
}
});
$(".selector").validate({
rules: {
name: {
required: true,
minlength: 2
}
},
messages: {
name: {
required: "We need your email address to contact you",
minlength: jQuery.format("At least {0} characters required!")
}
}
});
$("#myform").validate({
groups: {
username: "fname lname"
},
errorPlacement: function (error, element) {
if (element.attr("name") == "fname"
|| element.attr("name") == "lname")
error.insertAfter("#lastname");
else
error.insertAfter(element);
},
debug: true
});
$(".selector").validate({
onsubmit: false
});
$(".selector").validate({
onfocusout: false
});
$(".selector").validate({
onkeyup: false
});
$(".selector").validate({
onclick: false
});
$(".selector").validate({
focusInvalid: false
});
$(".selector").validate({
focusCleanup: true
});
$("#myform").validate({
meta: "validate",
submitHandler: function () { alert("Submitted!") }
});
$(".selector").validate({
errorClass: "invalid"
});
$(".selector").validate({
validClass: "success"
});
$(".selector").validate({
errorElement: "em"
});
$(".selector").validate({
wrapper: "li"
});
$("#myform").validate({
errorLabelContainer: "#messageBox",
wrapper: "li",
submitHandler: function () { alert("Submitted!") }
});
$("#myform").validate({
errorContainer: "#messageBox1, #messageBox2",
errorLabelContainer: "#messageBox1 ul",
wrapper: "li", debug: true,
submitHandler: function () { alert("Submitted!") }
});
$(".selector").validate({
showErrors: function (errorMap: ErrorDictionary, errorList: ErrorListItem[]) {
$("#summary").html("Your form contains " + this.numberOfInvalids() + " errors, see details below.");
this.defaultShowErrors();
}
});
$("#myform").validate({
errorPlacement: function (error, element) {
error.appendTo(element.parent("td").next("td"));
},
debug: true
});
$("#myform").validate({
success: "valid",
submitHandler: function () { alert("Submitted!") }
});
$("#myform").validate({
success: function (label) {
label.addClass("valid").text("Ok!")
},
submitHandler: function () { alert("Submitted!") }
});
$(".selector").validate({
highlight: function (element, errorClass) {
$(element).fadeOut(function () {
$(element).fadeIn();
});
}
});
$(".selector").validate({
highlight: function (element: HTMLInputElement, errorClass, validClass) {
$(element).addClass(errorClass).removeClass(validClass);
$((<HTMLInputElement>element).form).find("label[for=" + element.id + "]")
.addClass(errorClass);
},
unhighlight: function (element: HTMLInputElement, errorClass, validClass) {
$(element).removeClass(errorClass).addClass(validClass);
$((<HTMLInputElement>element).form).find("label[for=" + element.id + "]")
.removeClass(errorClass);
}
});
$(".selector").validate({
ignoreTitle: true
});
}
function test_methods() {
$("#myform").validate();
$("a.check").click(function () {
alert("Valid: " + $("#myform").valid());
return false;
});
$("#myinput").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input",
minlength: jQuery.format("Please, at least {0} characters are necessary")
}
});
$("#myinput").rules("remove");
$("#myinput").rules("remove", "min max");
$("#myinput").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input",
minlength: jQuery.format("Please, at least {0} characters are necessary")
}
});
$("#skip").click(function () {
var rules = $("#myinput").removeAttrs("min max");
$("#myform").submit();
$("#myinput").attr(rules);
});
$("#myform").validate().form();
$("#myform").validate().element("#myselect");
var validator = $("#myform").validate();
validator.resetForm();
validator.showErrors({ "firstname": "I know that your firstname is Pete, Pete!" });
validator.hideErrors();
var isValid: boolean = validator.valid();
var size: number = validator.size();
var errorMap: ErrorDictionary = validator.errorMap;
var errorList: ErrorListItem[] = validator.errorList;
$("#summary").text(validator.numberOfInvalids() + " field(s) are invalid");
jQuery.validator.setDefaults({
debug: true
});
jQuery.validator.addMethod("domain", function (value, element) {
return this.optional(element) || /^http:\/\/mycorporatedomain.com/.test(value);
}, "Please specify the correct domain for your documents");
jQuery.validator.addClassRules({
name: {
required: true,
minlength: 2
},
zip: {
required: true,
digits: true,
minlength: 5,
maxlength: 5
}
});
jQuery.validator.addClassRules({
name: {
required: true,
minlength: 2
},
zip: {
required: true,
digits: true,
minlength: 5,
maxlength: 5
}
});
}