<script type="text/javascript"> function add_reason(elm){ try{ var pp=$('.pp').val(); var contents=$('.pp2').val(); if(pp==0){ throw "请先选择品类"; } if(!contents){ throw "请先输入故障描述内容"; } $('form').submit(); }catch(err){ art.dialog({ drag: false, resize: false, title:'温馨提示', content: err, }); } } </script>
相关文章
- 漫话JavaScript与异步·第三话——Generator:化异步为同步 一、Promise并非完美 我在上一话中介绍了Promise,这种模式增强了事件订阅机制,很好地解决了控制反转带来的信任问题、硬编码回调执行顺序造成的“回调金字塔”问题,无疑大大提高了前端开发体验。但有了Promise就能完美地解决异步问题了吗?并没有。 首先,Promise仍然需要通过then方法注册回调,虽然只有一层,但沿着Promise链一长串写下来,还是有些让人头晕。 更大的问题在于Promise的错误处理比较麻烦,因为Promise链中抛出的错误会一直传到链尾,但在链尾捕获的错误却不一定清楚来源。而且,链中抛出的错误会fail掉后面的整个Promise链,如果要在链中及时捕获并处理错误,就需要给每个Promise注册一个错误处理回调。噢,又是一堆回调! 那么最理想的异步写法是怎样的呢?像同步语句那样直观地按顺序执行,却又不会阻塞主线程,最好还能用try-catch直接捕捉抛出的错误。也就是说,“化异步为同步”!
- js脚本中try与cache捕获异常处理
- File类与常用IO流第六章——使用try...catch...finally处理流中的异常
- T-SQL编程中的异常处理-异常捕获(try catch)与抛出异常(throw)