JSFiddle - React, Tailwind, and code Playground

by damyanpetev

HTML

<script src="http://igniteui.com/js/modernizr.min.js"></script>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<script src="http://cdn-na.infragistics.com/igniteui/latest/js/infragistics.core.js"></script>
<script src="http://cdn-na.infragistics.com/igniteui/latest/js/infragistics.lob.js"></script>
<link href="http://cdn-na.infragistics.com/igniteui/latest/css/themes/infragistics/infragistics.theme.css" rel="stylesheet"></link>
<link href="http://cdn-na.infragistics.com/igniteui/latest/css/structure/infragistics.css" rel="stylesheet"></link>

<div id="container" class="clearfix">
        <div id="igMaskEditorsContainer">
            <form id="form" action="javascript:console.log('Submit');">
                <div class="group-fields">
                    <label>Mask:</label>
                    <div id="msk1"></div>
                    <a id="picker" href="#">Show Picker</a>
                </div>
                <div class="group-fields">
                    <label>Input:</label>
                    <input id="msk2" />
                </div>
                <input type="submit" id="submitBtn" value="Submit"></input>
            </form>
        </div>

        <div id="ValuesContainer">
            <h4>Submitted Values:</h4>
            <div class="divHeight">
                <p class="pStyle" id="results">
            </div>
        </div>
    </div>

CSS

#container {
            width: 70%;
            border: 1px solid #ccc;
            box-sizing: border-box;
            padding: 20px;
        }

        .p {
            margin-top: 5px;
        }

        #igMaskEditorsContainer {
            float: left;
        }

        .group-fields {
            margin-bottom: 10px;
        }

        .group-fields label {
            display: block;
            line-height: 18px;
        }

        .group-fields .ui-igedit-container {
            width: 250px;
        }

        #ValuesContainer {
            float: right;
            width: 50%;
        }

        #ValuesContainer.p {
            font-size: 16px;
        }

        #container h4 {
            font-size: 16px;
            margin-bottom: 10px;
        }

        .clearfix:after {
            content: "";
            display: table;
            clear: both;
        }

        @media screen and (max-width:960px) {
            #container {
                width: 80%;
            }
        }

        @media screen and (max-width:840px) {
            #container {
                width: 100%;
            }
        }

        @media screen and (max-width:690px) {
            #igMaskEditorsContainer, #ValuesContainer {
                float: none;
            }
            #ValuesContainer {
                margin-top: 20px;
                width: auto;
            }
        }
        @media screen and (max-width:365px) {
            .group-fields .ui-igedit-container {
                 width: 200px;
            }
        }

JavaScript

$(function () {

        var $maskEditor = $('#msk1').igMaskEditor({
            inputMask: '99/99/9999',
            dataMode: 'rawTextWithLiterals'
        });
			
      	$maskEditor.igMaskEditor("field").datepicker({
          showOn: "none",
        	onSelect: function(dateText, inst){
            $maskEditor.igMaskEditor("value", dateText);
          }
        });
		
				$("#picker").on("click", function(){
        	$maskEditor.igMaskEditor("field").datepicker("show");
        });

        $("#form").submit(function (event) {

            $('.p').remove();

            var submittedValues = [];
            submittedValues.push($("#msk1").igMaskEditor("value"));
            var headers = $('.group-fields label');

            for (var i = 0 ; i < submittedValues.length; i++) {

                $("#results").append("<p class='p'><span class='header'>" + headers[i].textContent + "</span>  <b>" + submittedValues[i] + "</b></p>");
            }
        });
});