2014-11-20 3 views
0

Здравствуйте, я не могу узнать, как удалить определенное значение из строки при нажатии на элемент со строковым значением. его для моего списка дел.как удалить определенное значение из массива jquery

if (window.localStorage.fullName !== undefined) { 
alert('Your browser does not support localStorage'); 
} else { 
$(function() { 
    console.log('localSorage compitability detected. proceeding...'); 

глобальные вары & функции

var tdli = []; 

список добавить пункты

$('#tdladd').click(function() { 
     $('.todolist ul ul').append("<li class='tdli'>" + $('#tdlinput').val() + "</li>"); 
     tdli.push($('#tdlinput').val()); 
     $('#tdlinput').val(''); 
     var array = tdli + ""; 
     localStorage.setItem('tdlis', array); 
     console.log(array); 
     $('#todolist').hide().fadeIn('fast'); 
    }); 

список Удалить элементы

$('li').click(function() { 
     var itemtoRemove = $(this); 
     tdli.splice($.inArray(itemtoRemove, tdli), 1); 
     console.log(tdli); 
    }); 

    $('#clearall').click(function() { 
     localStorage.clear(); 
     location.reload(); 
    }); 

список нагрузки элементы

var tdlitems = localStorage.getItem('tdlis'); 

    var array = tdlitems.split(','); 

    tdli.push(array); 

    for (var i = 0; i < array.length; i++) { 
     array[i] + "<br>"; 
     $('.todolist ul ul').append("<li>" + array[i] + "</li>"); 
    }; 

    console.log(array); 


}); 

} 
+1

Не могли бы вы разместить ВСЕ соответствующий код? Это возможно, но я хочу написать ответ, который соответствует вашему коду. –

ответ

2

Предполагая, что tdli является JQuery обернутого множества (которое сам по себе является массив, как-объект), он будет иметь DOM узлов, хранящиеся вместо других объектов JQuery. Это значит, что просто введите

var itemtoRemove = this; 

и все должно быть хорошо.


После того, как Вы отправили свой полный код, мы можем видеть, что вы на самом деле толкает string values в ваш tdli Array, но вы пытаетесь .splice() объектов соответственно DOM nodes, которые, конечно, не имеет никакого смысла (по сравнению яблоки для апельсинов).

+1

Да, я просто начинаю код js как 2 недели. поэтому я не знаю об этом много. –

Смежные вопросы