首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery - stop函数

jQuery - stop函数
EN

Stack Overflow用户
提问于 2010-02-08 23:59:00
回答 2查看 2.5K关注 0票数 2

我想要实现的是,如果出现错误(这是我想出来的),并且包含单词“error”,那么函数就会停止运行。该函数主要由5个ajax请求组成,当一个请求成功时,另一个请求开始执行。就像这样..

代码语言:javascript
复制
function thing() {
    $.ajax({
        ...
        ...  
        success: 
        function(html){
            errorGet(html);   
            $.ajax({
            ...
            ...  
            success: 
            function(html){
                errorGet(html);
                    ...
                ... 

我有一个函数'errorGet()‘来尝试停止这个函数;

代码语言:javascript
复制
function errorGet(data){
    var re = /error/mgi;
    if( data.search( re ) == 0 ){
        thing.stop;
    }
}

但是我知道thing.stop不能工作,但是有谁知道如何停止这个过程吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-02-09 00:04:22

您是否尝试过抛出异常?

代码语言:javascript
复制
throw "there was an error so I am going to stop";
票数 2
EN

Stack Overflow用户

发布于 2010-02-09 00:12:12

你可以有一个函数来调用你的AJAX请求,而不是异步的。这样就不需要进行网络连接,只需使用return退出函数即可。

代码语言:javascript
复制
function thing() {
    var stop = false;

    $.ajax({
        async: false,
        ...  
        success: 
        function(html){
            stop = errorGet(html);
        }
    }

    if(stop) {
        return false;
    }

    $.ajax({
        async: false,
        ...  
        success: 
        function(html){
            stop = errorGet(html);
        }
    }
}

function errorGet(data){
    var re = /error/mgi;
    if( data.search( re ) == 0 ){
        return false; //no error
    }
    return true;
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2222845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档