I wanna build an input with fixed text | KG at the end, and remove the default ^ v input type of number:

That's what I want

That's what I've tried so far:
function isNumberKey(txt, evt) {
  var charCode = (evt.which) ? evt.which : evt.keyCode;
  if (charCode == 46) {
    if (txt.value.indexOf('.') === -1) {
        return true;
    } else {
        return false;
    }
  } else {
    if (charCode > 31 && (charCode < 48 || charCode > 57))
        return false;
  }
  return true;
}.field {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      color: white;
      font-size: 1.1rem;
      text-transform: uppercase;
      background-color: rgba(36, 141, 127, 0.4);
    }
    input {
      background-color: rgba(14, 78, 72, 0.6);
      border: 1px solid rgba(0, 0, 0, 0.3);
      border-radius: 4px;
      padding: 9px;
      outline: none;
      color: wheat;
      font-size: 1.1rem;
      position: relative;
    }
    .kg::after {
      content: "| KG";
      position: absolute;
      right: 3px;
      top: 2px;
    }<html>
  <body>
    <div class="field">
      <label for="gesier"> gesier</label>
      <input type="number" id="gesier" class="kg" onkeypress="return isNumberKey(this,event);" />
    </div>
  </body>
  <style></style>
</html> 
    