jqwidgets-scripts-custom
Version:
jQWidgets is an advanced jQuery, Angular 7, Vue, React, ASP .NET MVC, Custom Elements and HTML5 UI framework.
198 lines (170 loc) • 8.31 kB
HTML
<html lang="en">
<head>
<title id='Description'>PasswordInput Custom Element DefaultFunctionality</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1 minimum-scale=1" />
<meta name="description" content="This is an example of the default functionalities in Custom Element Passwordinput." />
<link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" />
<link rel="stylesheet" href="../../../styles/demos.css" type="text/css" />
<script type="text/javascript" src="../../../scripts/webcomponents-lite.min.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.elements.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxpasswordinput.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxinput.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdatetimeinput.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcalendar.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxtooltip.js"></script>
<script type="text/javascript" src="../../../jqwidgets/globalization/globalize.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxscrollbar.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxlistbox.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdropdownlist.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxexpander.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxvalidator.js"></script>
<script type="text/javascript" src="../../../scripts/demos.js"></script>
<script>
var genders = ['male', 'female'];
JQXElements.settings['createAccount'] =
{
toggleMode: 'none',
showArrow: false
};
JQXElements.settings['password'] =
{
showStrength: true,
showStrengthPosition: "right"
};
JQXElements.settings['gender'] =
{
source: genders,
selectedIndex: -1,
promptText: 'I am...',
autoDropDownHeight: true
};
JQXElements.settings['submit'] =
{
theme: theme
};
JQXElements.settings['form'] =
{
rules: [
{
input: '#firstName', message: 'First name is required!', action: 'keyup, blur', rule: (input, commit) => {
return firstName.val() != '' && firstName.val() != 'First';
}
},
{
input: '#lastName', message: 'Last name is required!', action: 'keyup, blur', rule: (input, commit) => {
return lastName.val() != '' && lastName.val() != 'Last';
}
},
{ input: '#userName', message: 'Username is required!', action: 'keyup, blur', rule: 'required' },
{ input: '#password', message: 'Password is required!', action: 'keyup, blur', rule: 'required' },
{ input: '#passwordConfirm', message: 'Password is required!', action: 'keyup, blur', rule: 'required' },
{
input: '#passwordConfirm', message: 'Passwords should match!', action: 'keyup, blur', rule: (input, commit) => {
var firstPassword = password.val();
var secondPassword = passwordConfirm.val();
return firstPassword == secondPassword;
}
},
{
input: '#gender', message: 'Gender is required!', action: 'blur', rule: (input, commit) => {
var index = gender.getSelectedIndex();
return index != -1;
}
}
]
};
window.onload = function() {
var myExpander = document.querySelector('jqx-expander');
var myButton = document.querySelector('jqx-button');
var myValidator = document.querySelector('jqx-validator');
myButton.addEventListener('click', function() {
myValidator.validate(document.getElementById('form'))
});
myValidator.addEventListener('validationSuccess', function(event) {
myExpander.setContent = '<span style="margin: 10px;">Account created.</span>';
});
};
</script>
</head>
<body>
<div class="example-description">
This demo illustrates the default functionality of the Custom element PasswordInput widget.
</div>
<jqx-expander settings="createAccount" style="font-family: Verdana; font-size: 13px;">
<div>
Create a new account
</div>
<div style="font-family: Verdana; font-size: 13px;">
<jqx-validator settings="form" style="overflow: hidden; margin: 10px;" action="./">
<table>
<tr>
<td colspan="2">First Name</td>
</tr>
<tr>
<td>
<jqx-input id="firstName" class="firstname"></jqx-input>
</td>
</tr>
<tr>
<td colspan="2">Last Name</td>
</tr>
<tr>
<td>
<jqx-input id="lastName" class="lastname"></jqx-input>
</td>
</tr>
<tr>
<td colspan="2">Choose your username</td>
</tr>
<tr>
<td colspan="2">
<jqx-input id="userName" class="username"></jqx-input>
</td>
</tr>
<tr>
<td colspan="2">Create a password</td>
</tr>
<tr>
<td colspan="2">
<jqx-password-input id="password" class="password"></jqx-password-input>
</td>
</tr>
<tr>
<td colspan="2">Confirm your password</td>
</tr>
<tr>
<td colspan="2">
<jqx-password-input id="passwordConfirm" class="confirmpassword"></jqx-password-input>
</td>
</tr>
<tr>
<td colspan="2">Birthday</td>
</tr>
<tr>
<td colspan="2">
<jqx-date-time-input></jqx-date-time-input>
</td>
</tr>
<tr>
<td colspan="2">Gender</td>
</tr>
<tr>
<td colspan="2">
<jqx-drop-down-list settings="gender" id="gender" class="gender"></jqx-drop-down-list>
</td>
</tr>
<tr>
<td colspan="2">
<jqx-button settings="submit">Create account</jqx-button>
</td>
</tr>
</table>
</jqx-validator>
</div>
</jqx-expander>
</body>
</html>