Last occurance regex

by lshettyl

HTML

<div class="form-group form-appointment-time">
  <label class="col-sm-2 control-label">Preferred Time:</label>
  <div class="col-sm-10">
    <div class="form-inline">
      <select class="form-control" name="form-hour">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
      </select>
      <select class="form-control" name="form-minute">
        <option value="00">00</option>
        <option value="30">30</option>
      </select>
      <input name="time_format" id="time-am" type="radio" value="AM">
      <label for="time-am">AM</label>
      <input name="time_format" id="time-pm" type="radio" value="PM">
      <label for="time-pm">PM</label>
    </div>
  </div>
</div>

<p class="result"></p>

JavaScript

var $wrapper = $('.form-appointment-time');
var inputs = [
    "select[name='form-hour']",
    "select[name='form-minute']",
    "input[name='time_format']:checked"
];

$wrapper.on('change', 'input, select', function() {
    var userTime = $wrapper.find(inputs.join(', '))
    .map(function() {
        return this.value;
    }).get().join(":");
    
    var userDate = userTime.replace(/:(?!.*:)/g, " ");
    
    // For preview
    $('.result').replaceWith('<p class="result">' + userDate + '</p>');
});