Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当我在ajax上使用change函数时,我以前的数据并没有消失_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 当我在ajax上使用change函数时,我以前的数据并没有消失

Javascript 当我在ajax上使用change函数时,我以前的数据并没有消失,javascript,jquery,ajax,Javascript,Jquery,Ajax,我的所有数据都正确过帐,我的投递箱正常工作。但是,当我做出不同的选择时,我希望以前的数据消失,只有新的选择才可见 以下是我的javascript: $.ajax({ url:'http://107.170.75.124/courts/courts.json', method: 'post' }) .done (function(data){ data.forEach(function(item){ console.log (item.county_name); $ ('

我的所有数据都正确过帐,我的投递箱正常工作。但是,当我做出不同的选择时,我希望以前的数据消失,只有新的选择才可见

以下是我的javascript:

$.ajax({
url:'http://107.170.75.124/courts/courts.json',
method: 'post'
})
.done (function(data){
   data.forEach(function(item){
    console.log (item.county_name);
      $ ('select').append('<option value="' +  item.county_name + '">' + 
item.county_name + '</option>');    

 });

$('select').on('change', function(item){
var answer = $(this).val();
$.ajax({
    url:'http://107.170.75.124/courts/courts.json',
    method: 'post'
})
.done(function(item){
    data.forEach(function(item){
        if (item.county_name === answer){
           console.log (item.court_name);
              $ ('p').append (item.court_name + '</br>');
              $ ('p').append (item.address + '</br>');
              $ ('p').append (item.phone+ '</br>');



        }
    })
 })
});
}); 
$.ajax({
网址:'http://107.170.75.124/courts/courts.json',
方法:“发布”
})
.完成(功能(数据){
data.forEach(功能(项){
console.log(项目名称);
$('select')。附加(''+
物资品种名称+“”);
});
$('select')。在('change',函数(项)上{
var answer=$(this.val();
$.ajax({
网址:'http://107.170.75.124/courts/courts.json',
方法:“发布”
})
.完成(功能(项目){
data.forEach(功能(项){
如果(item.country_name==答案){
console.log(项目名称);
$('p')。追加(item.court_name+'
); $('p').append(item.address+'
); $('p').append(item.phone+'
); } }) }) }); });
.append
只是添加元素,而不是替换元素。如果要替换,需要使用
target.html(newStuff)
target.replaceWith(newStuff)


我认为您需要将
.append
更改为
.html
以覆盖数据

我还建议您使用
Array.prototype.filter()
。此方法创建一个新数组,其中包含通过所提供函数实现的测试的所有元素。在本例中,使用相同的国家名称

您还可以替换
item.court_name+'
'+item.address+'
'+item.phone+'
'
使用
Array.prototype.join()
创建此表达式。此方法将数组(或类似数组的对象)的所有元素合并为字符串

像这样:

var array = [item.court_name, item.address, item.phone];
array.join('<br />');
var数组=[item.court_name,item.address,item.phone];
数组.join(“
”);
或者只是:
[item.court\u name,item.address,item.phone].join(“
”)

$.ajax({
网址:'http://107.170.75.124/courts/courts.json',
方法:“发布”
})
.完成(功能(数据){
data.forEach(功能(项){
//控制台.日志(项目.县名称);
$('select')。附加('+
物资品种名称+“”);
});
$('select')。在('change',函数(项)上{
var answer=$(this.val();
$.ajax({
网址:'http://107.170.75.124/courts/courts.json',
方法:“发布”
})
.完成(功能(项目){
var html=data.filter(函数(项){
返回item.country_name==答案;
}).map(功能(项目){
控制台日志(项目名称);
return[item.court_name,item.address,item.phone].join(“
”); }); $('p').html(html); }); }); });

沃尔沃汽车
萨博
梅赛德斯
奥迪

您总是
。追加
-您在任何地方都无法清除现有内容
var html = data.filter(function(item){
    return item.county_name === answer;
}).map(function(item) {
    return [item.court_name, item.address, item.phone].join('<br />');
});
$('p').html(html);
var array = [item.court_name, item.address, item.phone];
array.join('<br />');