AjaxRemoteGetData is not defined

AjaxRemoteGetData is not defined

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
var storage = {};
 
storage.hospital = [
 
    ['area','level','type','name','address','phone','imgUrl','time'],
 
    ['朝阳区','三级甲等','卫生部直属医院','首都儿科研究所附属儿童医院','北京市朝阳区雅宝路2号','010-85695756','img/hospital-1.jpg','14:30'],
 
    ['朝阳区','三级甲等','卫生部直属医院','中日友好医院','北京市朝阳区樱花东路2号','84205288','img/hospital-2.jpg','8:30'],
    ['西城区','三级甲等','卫生部直属医院','首都医科大学附属北京友谊医院','北京市西城区永安路95号','63016616','img/hospital-3.jpg','9:30'],
    ['朝阳区','三级甲等','卫生部直属医院','首都医科大学附属北京地坛医院B附属','北京市朝阳区樱花东路2号','84205288','img/hospital-4.jpg','8:30'],
    ['朝阳区','三级合格','北京区县属医院','空军总医院','北京市朝阳区樱花东路2号','84205288','img/hospital-5.jpg','8:30'],
    ['海淀区','三级合格','北京区县属医院','航天中心医院(原721医院)','北京市海淀区玉泉路15号','59971160','img/hospital-6.jpg','8:30'],
    ['丰台区','三级甲等','北京区县属医院','北京中医药大学东方医院','北京丰台区方庄芳星园一区6号','67689655','img/hospital-1.jpg','8:30'],
 
    ['丰台区','三级合格','北京区县属医院','北京电力医院','北京市丰台区太平桥西里甲1号','84205288','img/hospital-2.jpg','8:30'],
    ['顺义区','三级甲等','北京区县属医院','北京中医医院顺义医院','北京市顺义区站前东街5号','84205288','img/hospital-3.jpg','8:30'],
    ['通州区','三级甲等','其他','首都医科大学附属北京潞河医院三级综合医院','北京市通州区新华南路82号','69543901','img/hospital-4.jpg','8:30'],
     
];
 
storage.department = [
    ['hospitalName', ['departmentName'] ],
 
    ['首都儿科研究所附属儿童医院',['儿科a','儿科b','儿科d'] ],
    ['中日友好医院',['科室a','科室b','科室c','科室d'] ],
 
    ['首都医科大学附属北京友谊医院', ['departmentName-1'] ],
    ['首都医科大学附属北京地坛医院B附属', ['departmentName-2'] ],
    ['空军总医院',['departmentName-3'] ],
    ['航天中心医院(原721医院)', ['departmentName-4'] ],
    ['北京中医药大学东方医院', ['departmentName-5'] ],
    ['北京电力医院', ['departmentName-6'] ],
    ['北京中医医院顺义医院', ['departmentName-7'] ] ,
    ['首都医科大学附属北京潞河医院三级综合医院', ['departmentName-8'] ] 
 
]
 
var AjaxRemoteGetData = {};
 
AjaxRemoteGetData.getDistinctArea = function() {
     
    console.log('远程数据获取','getDistinctArea');
 
    var map = {};
    var arr = ['医院地区'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
        var _d = storage.hospital[i][0];
        map[_d] =1;
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
AjaxRemoteGetData.getLeveByArea  = function( area ){
    console.log('远程数据获取','getLeveByArea','arguments:',arguments);
     
    var map = {};
    var arr = ['医院等级'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
 
        var _area = storage.hospital[i][0];
        var _d = storage.hospital[i][1];
        if(area == _area){
            map[_d] = 1;
        }
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
AjaxRemoteGetData.getNameByAreaAndLevel = function( area , level ){
    console.log('远程数据获取','getNameByAreaAndLevel','arguments:',arguments);
    var map = {};
    var arr = ['医院名称'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
 
        var _area = storage.hospital[i][0];
        var _level= storage.hospital[i][1];
        var _d = storage.hospital[i][3];
        if(level == _level && area == _area ){
            map[_d] = 1;
        }
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
AjaxRemoteGetData.getDepartmentArrByHospitalName = function( area,level,hospitalName ){
    console.log('远程数据获取','getDepartmentArrByHospitalName','arguments:',arguments);
    var map = {};
    var arr = ['科室名称'];
    for(i=1,j=storage.department.length; i<j ; i++){
 
        var _hospitalName = storage.department[i][0];
        var _d = storage.department[i][1];
        if(hospitalName == _hospitalName ){
            map[_d] = 1;
        }
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
 
AjaxRemoteGetData.getDistinctType=function(){
    console.log('远程数据获取','getDistinctType');
 
    var map = {};
    var arr = ['医院类型'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
        var _d = storage.hospital[i][2];
        map[_d] =1;
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
AjaxRemoteGetData.getDistinctLevel=function(){
    console.log('远程数据获取','getDistinctLevel');
 
    var map = {};
    var arr = ['医院等级'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
        var _d = storage.hospital[i][1];
        map[_d] =1;
    }
    for( k in map){
        arr.push(k);
 
    }
    console.log('结果',arr);
    return arr;
}
AjaxRemoteGetData.getHospitalArrByFilter=function(type,level,area){
    console.log('远程数据获取','getHospitalArrByFilter','arguments:',arguments);
    var map = {};
    var arr = ['医院列表'];
    for(i=1,j=storage.hospital.length; i<j ; i++){
 
        var _type= storage.hospital[i][2];
        var _area = storage.hospital[i][0];
        var _level= storage.hospital[i][1];
 
        var _d = storage.hospital[i][3];
        if
                (level == _level || level =='全部') && 
                (area == _area || area == '全部' ) && 
                (type == _type || type == '全部')
            ){
            arr.push(storage.hospital[i]);
        }
    }
    console.log('结果',arr);
    return arr;
}
 
 
 
//搜素
$.fn.uiSearch = function(){
    var ui = $(this);
    var serchSelect = $('.ui-search-selected',ui);
    serchSelect.click(function(){
        $('.ui-search-select-list').show();
        return false;//阻止事件冒泡,不然也会触发body的点击事件
    });
 
    $('.ui-search-select-list a',ui).click(function(){
        var text = $(this).text();
        serchSelect.text(text);
        $('.ui-search-select-list').hide();
         
    });
 
    $('body').click(function(){
        $('.ui-search-select-list').hide();
    });
};
 
 
//回到顶部
$.fn.backTop = function(){
    var ui = $(this);
    var el = $('<a class="go-top" href="#0"></a>');
    ui.append(el);
    var windowHeight = $(window).height();
    var scrollTop = $(window).scrollTop();
    $('window').scroll(function(){
        if(scrollTop > windowHeight){
            el.show();
        }else{
            el.hide();
        }
    });
 
    el.click(function(){
        $(window).scrollTop(0);
    });
}
 
 
//选项卡
$.fn.uiTab = function(header,content,focus_prefix){
    var ui = $(this);
    var tabs = $(header,ui);
    var cons = $(content,ui);
    var focus = focus_prefix || '';
    tabs.click(function(){
        var index = $(this).index();
        tabs.removeClass(focus+"item_focus");
        $(this).addClass(focus+"item_focus");
        cons.hide();
        cons.eq(index).show();
        return false;
    });
 
};
 
 
//幻灯片
$.fn.uiSlider = function(){
    var ui = $(this);
    var prev = $('.ui-slider-arrow .left',ui);
    var next = $('.ui-slider-arrow .right',ui);
    var dots = $('.ui-slider-process a',ui);
    var wrap = $('.ui-slider-wrap',ui);
    var width = wrap.children().eq(0).width();
    var current = 0;
    var len = wrap.children().length;
    var enableAuto=true;
 
    ui.mouseover(function(){
        enableAuto=false;
    });
     
    ui.mouseout(function(){
        enableAuto=true;
    });
     
    wrap.on('move_to',function(event,index){
        wrap.css('left',index*width*-1+'px');
        dots.removeClass('item_focus').eq(index).addClass('item_focus');
    })
 
        .on('move_prev',function(){
             
            current--;
            if(current<0){
                current=len-1;
            }
            wrap.triggerHandler('move_to',current);
        })
 
        .on('move_next',function(){
             
            current++;
            if(current>len-1){
                current=0;
            }
            wrap.triggerHandler('move_to',current);
        })
 
        .on('auto_move',function(){
            setInterval(function(){
                if(enableAuto){
                    wrap.triggerHandler('move_next');
                }
            },2000);
        })
 
        .triggerHandler('auto_move');
 
    dots.click(function(){
        var index = $(this).index();
        wrap.triggerHandler('move_to',index);
    });
 
    prev.click(function(){
        wrap.triggerHandler('move_prev');
 
    });
 
    next.click(function(){
        wrap.triggerHandler('move_next');
 
    });
 
};
 
 
//下拉列表
$.fn.UiCascading = function(){
    var ui = $(this);
    var selects = $('select',ui);
 
    selects
    .on('change',function(){
        var val = $(this).val();
        var index = selects.index(this);
        console.log(val);
        //  触发下一个之后的 select  的初始化(清除不应该的数据项)
        ui.find('select:gt('+(index+1)+')').each(function(){
            $(this)
            .attr('data-where','')
            .triggerHandler('reloadOptions');
        });
    })
 
    .on('reloadOptions',function(){
        var method = $(this).attr('data-search');//getDistinctArea
        // console.log(method);
        var args = $(this).attr('data-where').split(',');// [""]
        var data = AjaxRemoteGetData[ method ]();
        // var data = AjaxRemoteGetData[ method ].apply( this, args );
 
        debugger
         
    });
 
 
    selects.eq(0).triggerHandler('reloadOptions');
};
     
 
 
//脚本定义
$('.ui-search').uiSearch();
$('body').backTop();
$('.content-tab').uiTab('.caption > .item','.block > .item');
$('.content-tab .block .item').uiTab('.block-caption > a','.block-content > .block-wrap' ,'block-caption-');
$('.ui-slider').uiSlider();
$('.ui-cascading').UiCascading();
一直报这个错误,html和css文件我是直接从源码那里拿过来用的,我测试修改的也就只有ui.js这个文件。

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你好,如下,你到引入的这个路径顺序调换下,先引入data.js

http://img1.sycdn.imooc.com//climg/5b8527c40001ac7d12780130.jpg

若能帮助到你,望采纳。

祝学习愉快~

好帮手慕糖 2018-08-28 18:07:39

你好,是吧data.js中的内容也写到ui.js中了是么,这里在源码中测试,把内容粘到了ul.js中,同时去掉了页面中的data.js的引入,是没有报错的哦。

祝学习愉快~

  • 不是,data.js和ui.js我是分开的。下面是报错信息 ui.js:155 Uncaught ReferenceError: AjaxRemoteGetData is not defined at HTMLSelectElement.<anonymous> (ui.js:155) at HTMLSelectElement.dispatch (jquery-1.7.1.min.js:3) at HTMLSelectElement.i (jquery-1.7.1.min.js:3) at Object.trigger (jquery-1.7.1.min.js:3) at init.triggerHandler (jquery-1.7.1.min.js:3) at init.$.fn.UiCascading (ui.js:163) at ui.js:174
    2018-08-28 18:28:53
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码