当我点击select元素时,我需要记住所选元素的旧值.
此代码适用于FF,CHROME和OPERA,而不是IE.
此代码适用于FF,CHROME和OPERA,而不是IE.
>记住旧的价值.
>选择选择选项并替换旧值
记住一个选定的选项!
码:
$(document).ready(function() { $('#viewTableOrders tr td > select').click(function() { oldCurrentPath = $(this).val(); oldId = $(this).attr('title'); oldCurrentDate = $('#viewTableOrders tr#vagon' + oldId + '> td >input.input_ver1').val(); dataAjax = {}; }); /* event on change path */ $('#viewTableOrders tr td > select').change(function() { //do something... + old value }); });
解决方法
看起来问题是第二次点击(选择新选项)将在更改事件之前触发.
尝试使用焦点而不是单击:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> <select> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select>Old value is:<span></span> <script> $(document).ready( function() { $('select').focus(function() { //store old value $(this).data('oldValue',$(this).val());} ); $('select').change(function() { //do something $('span').text($(this).data('oldValue')); //trigger focus to set new oldValue $(this).trigger('focus'); }); } ); </script>
(例子也使用prodigitals建议的数据)