我有一个下拉菜单,我有jQuery“更改”功能。
我想根据“确认”对话框实施所选项目的更改。
如果确认为真,我可以继续选择更改,否则我将现有项目保留为已选项,并取消更改事件。
如何用jQuery实现这个?????
jquery功能
<script type="text/javascript"> $(function () { $("#dropdown").change(function () { var success = confirm('Are you sure want to change the Dropdown ????'); if (success == true) { alert('Changed'); // do something } else { alert('Not changed'); // Cancel the change event and keep the selected element } }); }); </script>
注意:只有在选择的项目更改后,有一件事要记住“更改”功能
所以更好地想在“onchange”上实现这一点 – 但是它在jquery中是不可用的,有没有办法来实现?
任何帮助将不胜感激…
Vinu
解决方法
那么,正如Vinu正确地指出的那样,只有在选择的值实际上被改变之后,才会触发jQuery的改变事件。你最好做这样的事情:
var prev_val; $('#dropdown').focus(function() { prev_val = $(this).val(); }).change(function() { $(this).blur() // Firefox fix as suggested by AgDude var success = confirm('Are you sure you want to change the Dropdown?'); if(success) { alert('changed'); // Other changed code would be here... } else { $(this).val(prev_val); alert('unchanged'); return false; } });