помощью jQuery удалить объект из коллекции объектов
У меня есть следующий пример кода создает объект коллекции.
Как удалить один из объектов? (например, $TestList будет выглядеть так, как будто элемента" удалить меня " никогда не было. Я пытался .снимать. ,сращивание. ,удалите etc, но мне сказали, что это не функция.
выполнение typeof ($TestList) возвращает объект, и typeof ($TestList[0]) также кажется допустимым.
конечно, мне не нужно воссоздавать коллекцию без одного предмет?
(function($) {
jQuery.QuickTest = {
$TestList: {},
build: function()
{
$TestList={};
$TestList[0] =
{
title: "part 1"
};
$TestList[1] =
{
title: "delete me please"
};
$TestList[2] =
{
title: "part 2"
};
}
}
jQuery.fn.QuickTest = jQuery.QuickTest.build;
})(jQuery);
$(document).ready(function() {
$().QuickTest(
{
})
});
мы используем jQuery 1.3.
спасибо!
2 ответов
комментарий
прежде всего, очень неочевидно, что должен делать ваш код, но вот некоторые проблемы:
jQuery.QuickTest = {
$TestList: {},
build: function()
{
$TestList={};
определения jQuery.QuickTest.$TestList
, а внутри build()
объявлении глобальные объект $TestList
.
функции, объявленные в jQuery.fn
должны действовать на согласованный набор элементов (на которые ссылается this
) и вернуть его, а также; ваша функция делает ни.
ответы
ответ на некоторые из ваших вопросов:
.remove()
- это функция jQuery, которая удаляет узлы из DOM и должна вызываться на объекте jQuery..splice()
относится только кArray
и даже если вы используете$TestList
как если бы это был один, это все еще простоObject
..delete()
нет никакой функции, которую я знаю ;-)
возможное решение
удалить запись из $TestList
можно использовать delete
таким образом:
delete $TestList[1];