Comparar formato 2 input

by Luis Martin

HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="prueba1">
<input type="text" id="prueba2">

<p id="resultado"></p>

JavaScript

function comprobar(elem1) {
  //var elem1 = document.getElementById(id);
  var elem2 = document.getElementById(elem1.id == "prueba1" ? "prueba2" : "prueba1");
  var mensaje = document.getElementById("resultado");
  var pattern = new RegExp(/^(([a-z]{3}\d{4}(\/\d{2}-\d{2})?)|((([a-z]\d{6})|([a-z]{3}\d{4}))(\/v\d{4})?))$/i);
  var pattern1 = new RegExp(/^[a-z]{3}\d{4}(\/\d{2}-\d{2})?$/i);
  var pattern2 = new RegExp(/^[a-z]{3}\d{4}(\/v\d{4})?$/i);
  var pattern3 = new RegExp(/^[a-z]\d{6}(\/v\d{4})?$/i);

  if (pattern1.test(elem1.value.trim()) || elem1.value.trim() == "") {

    cambiarColor(elem1, "");
    if (pattern1.test(elem2.value.trim()) || elem2.value.trim() == "") {
      mensaje.innerHTML = "";
    } else {
      mensaje.innerHTML = "no es el mismo formato de contrato";
    }

  } else if (pattern2.test(elem1.value.trim()) || elem1.value.trim() == "") {

    cambiarColor(elem1, "");
    if (pattern2.test(elem2.value.trim()) || elem2.value.trim() == ""  || "/^[a-z]{3}\d{4}".test(elem2.value.trim()) ) {
      mensaje.innerHTML = "";
    } else {
      mensaje.innerHTML = "no es el mismo formato de contrato";
    }

  } else if (pattern3.test(elem1.value.trim()) || elem1.value.trim() == "") {

    cambiarColor(elem1, "");
    if (pattern3.test(elem2.value.trim()) || elem2.value.trim() == ""   || "/^[a-z]{3}\d{4}".test(elem2.value.trim()) ) {
      mensaje.innerHTML = "";
    } else {
      mensaje.innerHTML = "no es el mismo formato de contrato";
    }

  } else {

    cambiarColor(elem1, "red");



  }


}

function cambiarColor(elem, color) {
  //alert(elem + " - " + color);
  elem.style.borderBottomColor = color;
  if (color == "red") {
    document.getElementById("resultado").innerHTML = "";
  }
}

$('input').bind('input propertychange', function() {
  comprobar(this);
});