求教jquery ajax逐条处理数据怎么写?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

求教jquery ajax逐条处理数据怎么写?

2016-07-06 16:04:17 2023 1



要求: 1.点击查询按钮后,$.ajax使用post向mysql.php发送请求数据,并将文本框设置为不可更改,button不能再点击

2.mysql.php返回一组json格式的数据,例如:["aaa","bbb","ccc"]

3.然后将这组逐条$.ajax使用post发送到demo.php,如data:{'chaxun':'aaa'}

4.只有当前一条complete完成后,才执行下一条data:{'chaxun':'bbb'}

5.当所有数据执行完后,释放对文本框和button的控制

另:jquery中用$.ajax有个timeout的超时参数,请教超时信息如何返馈给用户的?是通过error参数的function吗? 上面的要求要加上超时信息返馈给用户,请教怎么加? 能附上完整点的实例就更好了。

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:52:14
    <input type="text" name="chaxun" id="chaxun">
    <button id="button" onclick="search()">查询</button>
     
    <script src="jquery.js"></script>
    <script>
        var dataCount = 0;
        function search()
        {
            dataCount = 0;
            $('#chaxun').attr('readonly', 'readonly');
            $('#button').attr('disabled', 'disabled');
            ajax(
                'post', 'mysql.php', null,
                 function(response) {
                    if (response.lenth > 0) {
                        dataCount = response.length;
                        for (var index in response) {
                            completeData({chaxun: response[index]});
                        }
                    }
                     
                    if (dataCount == 0) {
                        $('#chaxun').removeAttr('readonly');
                        $('#button').removeAttr('disabled');                    
                    }
                     
                 }, error
            );
        }
         
        function completeData(data)
        {
            ajax(
                'post', 'demo.php', data,
                 function(response) {
                    if (dataCount > 0) {
                        dataCount--;
                    }
                }, error 
            );
        }
         
        function error(response)
        {
            if (response.status == 503) {
                alert('服务器超时,请稍后重试。');
            }
        }
         
        function ajax(type, url, data, cbfOk, cbfError)
        {
            $.ajax({
                type: type,
                url: url,
                async: false,
                data: data,
                dataType: 'json',
                success: function(response)
                {
                    if (typeof cbfOK == 'function') {
                        return cbfOk(response);
                    }               
                    return true;
                },
                error:function(response)
                {
                    if (typeof cbfError == 'function') {
                        return cbfError(response);
                    }
                    return false;
                }
            });     
        }
    </script>
    0 0
相关问答

4

回答

Spark 【问答合集】

社区小助手 2019-05-29 14:13:40 127084浏览量 回答数 4

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157652浏览量 回答数 145

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 93715浏览量 回答数 28

3

回答

Logstash采集文件名称以及自定义格式的日志文件采集

Snorlax 2019-06-18 11:51:28 114882浏览量 回答数 3

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 147210浏览量 回答数 22

31

回答

[@倚贤][¥20]刚学完html/css/js的新手学习servlet、jsp需要注意哪些问题?

弗洛伊德6 2018-10-27 21:52:43 146021浏览量 回答数 31

1

回答

出现这个问题求解决This XML file does not appear to have any

淘合肥 2017-04-08 21:07:00 92826浏览量 回答数 1

42

回答

【精品问答集锦】Python热门问题

小六码奴 2019-05-30 15:27:34 136872浏览量 回答数 42

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 305580浏览量 回答数 249

24

回答

【精品问答】python技术1000问(1)

问问小秘 2019-11-15 13:25:00 475462浏览量 回答数 24
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载