<!doctype html> <!– @license Copyright © 2015 The Polymer Project Authors. All rights reserved. This code may only be used under the BSD style license found at polymer.github.io/LICENSE.txt The complete set of authors may be found at polymer.github.io/AUTHORS.txt The complete set of contributors may be found at polymer.github.io/CONTRIBUTORS.txt Code distributed by Google as part of the polymer project is also subject to an additional IP rights grant found at polymer.github.io/PATENTS.txt –> <html> <head>

<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes">

<title>iron-input demo</title>

<script src="../../webcomponentsjs/webcomponents-lite.js"></script>

<link rel="import" href="../iron-input.html">
<link rel="import" href="../../paper-styles/color.html">
<link rel="import" href="../../paper-styles/demo-pages.html">
<link rel="import" href="../../paper-styles/typography.html">

<style is="custom-style">

  .vertical-section {
    @apply(--paper-font-body1);

    line-height: 40px;
  }

  code {
    color: var(--google-grey-700);
  }

  input[is=iron-input] {
    width: 100%;
    box-sizing: border-box;
  }

  input, button {
    font-size: 20px;
    padding: 0.2em;
  }

</style>

</head> <body>

<div class="vertical-section vertical-section-container centered">
  <template is="dom-bind">
    <p>
      <input is="iron-input" bind-value="{{bindValue}}" value="{{value::input}}">
      <br>
      bind to <code>bind-value</code>: <b>[[bindValue]]</b>
      <br>
      bind to <code>value::input</code>: <b>{{value}}</b>
    </p>

    <p on-click="setValue">
      set bind-value to: <input> <button is="paper-button" value="bindValue">set</button>
      <br>
      set value to: <input> <button value="value">set</button>
    </p>
  </template>
  <p>only allows these characters:
  <code>!@#0123456789</code></p>
  <input is="iron-input" allowed-pattern="[!@#0-9]" prevent-invalid-input>

</div>

<script>
  var scope = document.querySelector('template[is=dom-bind]');

  scope.setValue = function(event) {
    if (!(event.target instanceof HTMLButtonElement)) {
      return;
    }
    document.querySelector('input[is=iron-input]')[event.target.value] = event.target.previousElementSibling.value;
  }
</script>

</body> </html>