1. function escapeDoubleclick(func) {
2. var disabledButtonArray = new Array();
3. // Disabled
4. var disableButtons = function() {
5. var objs = document.getElementsByTagName('INPUT');
6. for (var i = 0; i < objs.length; i++) {
7. if (objs[i].type.toLowerCase() == 'button' && objs[i].disabled != true) {
8. disabledButtonArray.push(objs[i]);
9. objs[i].disabled = true;
10. }
11. }
12. }
13. // Enabled
14. var enableButtons = function() {
15. while (disabledButtonArray.length > 0) {
16. var obj = disabledButtonArray.pop();
17. obj.disabled = false;
18. }
19. }
20. var submit;
21. try {
22. disableButtons();
23. submit = func();
24. } catch(e) {
25. enableButtons();
26. throw e;
27. } finally {
28. if (false == submit) {
29. enableButtons();
30. }
31. }
32. return ret;
33. }
2. var disabledButtonArray = new Array();
3. // Disabled
4. var disableButtons = function() {
5. var objs = document.getElementsByTagName('INPUT');
6. for (var i = 0; i < objs.length; i++) {
7. if (objs[i].type.toLowerCase() == 'button' && objs[i].disabled != true) {
8. disabledButtonArray.push(objs[i]);
9. objs[i].disabled = true;
10. }
11. }
12. }
13. // Enabled
14. var enableButtons = function() {
15. while (disabledButtonArray.length > 0) {
16. var obj = disabledButtonArray.pop();
17. obj.disabled = false;
18. }
19. }
20. var submit;
21. try {
22. disableButtons();
23. submit = func();
24. } catch(e) {
25. enableButtons();
26. throw e;
27. } finally {
28. if (false == submit) {
29. enableButtons();
30. }
31. }
32. return ret;
33. }