jqwidgets-framework
Version:
jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.
204 lines (192 loc) • 7.93 kB
HTML
<html lang="en">
<head>
<title id="Description">jqxTimePicker Landscape View.</title>
<link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" />
<meta charset="utf-8" />
<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" />
<script type="text/javascript" src="../../../scripts/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdraw.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxtimepicker.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxform.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxradiobutton.js"></script>
<script type="text/javascript" src="../../../scripts/demos.js"></script>
<style>
#timepicker {
float: left;
}
#settingsForm {
width: 280px;
float: left;
margin-left: 80px;
}
.settings {
font-weight: bold;
font-size: 1.2em;
}
</style>
<script type="text/javascript">
$(document).ready(function ()
{
var size = 400;
var timepicker = $("#timepicker").jqxTimePicker({
width: size,
height: size,
format: "24-hour"
});
var timeFormatting = function (value)
{
var hour = value.getHours();
var minutes = value.getMinutes();
var minutesString = minutes < 10 ? "0" + minutes : minutes;
return "<span>" + hour + ":" + minutesString + "</span>";
};
$("#timepicker").on("change", function (event)
{
var args = event.args;
var newDate = args.value;
$("#currenttime").html(timeFormatting(newDate));
});
var template = [
{
type: "label",
label: "<span class='settings'>Settings</span>",
rowHeight: "40px",
},
{
type: "label",
label: "Selection",
rowHeight: "40px",
},
{
bind: "radiobuttonSelection",
type: "option",
label: "Selection",
labelPosition: "right",
columnWidth: "100px",
align: "left",
optionslayout: "horizontal",
options: [
{ label: "Hours", value: "hour" },
{ label: "Minutes", value: "minute" }
]
},
{
type: "label",
label: "Minute Interval",
rowHeight: "40px",
},
{
bind: "radiobuttonMinuteinterval",
type: "option",
label: "Minute Interval",
labelPosition: "right",
columnWidth: "100px",
align: "left",
optionslayout: "horizontal",
options: [
{ label: "1", value: "value1" },
{ label: "5", value: "value2" },
{ label: "15", value: "value3" }
]
},
{
name: "sethours",
type: "button",
text: "Set hours to 20",
height: "30px",
rowHeight: "40px",
columnWidth: "50%"
},
{
name: "setminutes",
type: "button",
text: "Set minutes to 12",
height: "30px",
rowHeight: "40px",
columnWidth: "50%"
},
{
name: "now",
type: "button",
text: "Set to now",
height: "30px",
rowHeight: "40px",
columnWidth: "50%"
},
{
type: "label",
label: "Current value: <span id=\"currenttime\"></span>",
rowHeight: "40px",
}
];
var sampleValue = {
"radiobuttonSelection": "hour",
"radiobuttonMinuteinterval": "value1"
};
var settingsForm = $("#settingsForm");
settingsForm.jqxForm({
template: template,
value: sampleValue,
padding: { left: 10, top: 10, right: 0, bottom: 10 }
});
$("#timepicker").jqxTimePicker({ value: new Date() });
settingsForm.on("formDataChange", function (event)
{
var args = event.args;
var newValue = args.value;
var previousValue = args.previousValue;
for (var i in newValue) {
var newInputValue = newValue[i];
if (previousValue && previousValue[i] !== undefined && previousValue[i] !== newValue[i]) {
switch (i) {
case "radiobuttonSelection":
$("#timepicker").jqxTimePicker({ selection: newValue[i] });
break;
case "radiobuttonMinuteinterval":
var currentValue = newValue[i];
if (currentValue === "value1") {
$("#timepicker").jqxTimePicker({ minuteInterval: 1 });
} else if (currentValue === "value2") {
$("#timepicker").jqxTimePicker({ minuteInterval: 5 });
} else {
$("#timepicker").jqxTimePicker({ minuteInterval: 15 });
}
break;
default:
break;
}
}
}
});
settingsForm.on('buttonClick', function (event)
{
var args = event.args;
var name = args.name;
switch (name) {
case "sethours":
$("#timepicker").jqxTimePicker("setHours", 20);
break
case "setminutes":
$("#timepicker").jqxTimePicker("setMinutes", 12);
break;
case "now":
$("#timepicker").jqxTimePicker({ value: new Date() });
break;
default:
break;
}
});
var value = $("#timepicker").jqxTimePicker("value");
$("#currenttime").html(timeFormatting(value));
});
</script>
</head>
<body>
<div id="timepicker"></div>
<div id="settingsForm"></div>
</body>
</html>