I know its the easiest question but can’t get the correct answer.
<div class="col-12 col-md-4 col-lg-5 mt10-xs"> <p>Status</p> <div class="form-group FL mr20 w100-xs"> <div class="rsi-custom-select"> <select class="form-control" id="statustab_{{ $row['placementkey'] }}" class="select2-selecting" onchange="listingByStatus(this,'{{ $row['placementkey'] }}')"> @foreach($placementStatus as $pl) <option @if($pl['placement_status_id'] == $row['statusid'] ) selected @endif value="{{$pl['placement_status_key']}}">{{$pl['placement_status']}}</option> @endforeach </select> </div> </div> </div>
This is my onchange
function. In this How Can I get the previous Selected Value from my select box?
function listingByStatus(ths,key){ var thisSelect = $('#statustab_'+key).text(); var statusText = $( "#statustab_"+key+" option:selected" ).text(); var currentval = $( "#statustab_"+key+" option:selected" ).val(); }
Advertisement
Answer
Save the original value using data()
when the element gets focus:
$('.select2-selecting').on('focusin', function(){ console.log("Saving value " + $(this).val()); $(this).data('val', $(this).val()); });
And then get the saved old value in your onchange
function:
function listingByStatus(ths,key){ var thisSelect = $('#statustab_'+key).text(); var statusText = $( "#statustab_"+key+" option:selected" ).text(); var currentval = $( "#statustab_"+key+" option:selected" ).val(); var prev = $('.select2-selecting').data('val'); //old value console.log("Old value " + prev); }