.remove is not function How to fix?

var dbRefObjectHis = firebase.database().ref('Box1').child('history');
dbRefObjectHis.on('value',gotData, errData);

function gotData(data) {
    var ref = d3.selectAll('.His');
    for (var i = 0; i < ref.length; i++){
    ref[i].remove();
}

var history = data.val();
var keys = Object.keys(history);

for (i = 0; i < keys.length; i++) {
    var k = keys[i];
    var humidity = history[k].humidity;
    var temperature = history[k].temperature;

    $('.His').append('Humidity:' + humidity + 'Temperature:' + temperature  );

}

Upvotes: 0

Views: 70

Answers (1)

Bastian Jakobsen
Bastian Jakobsen

Reputation: 132

This happens when the element you are trying to remove is not a removable Node.

try replacing

for (var i = 0; i < ref.length; i++){
    ref[i].remove();
}

with

ref.forEach(function(e) {
    e.remove();
});

Upvotes: 1

Related Questions