Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Пересобрать строку с разделителями (https://javascript.ru/forum/misc/10751-peresobrat-stroku-s-razdelitelyami.html)

Viper 19.07.2010 16:49

Пересобрать строку с разделителями
 
Есть строка которая собирается динамически вида
яблоки|апельсины|тыквы
она является значением скрытого input

Есть выпадающий список с этими элементами. Напротив каждого кнопка Удалить. Как реализовать удаление нужного элемента из строки?

PS! Как передать значение и т.д. понятно. Непонятно как правильно пересобрать строку :help:

function deleteHiddenInputValue() {
	var t_hidden = $(settings.onCallbackElementId).val();
	var arr = t_hidden.split("|");

	// код удаления ?
}

Vulkan 19.07.2010 16:59

Короче разбираешь в массив, ищещь в массиве строку которую удалить, удаляешь, потом с помощью метода join() собираешь.
Значение передать можно с помощью назначения id каждому элементу и передачи его в функцию.
Если не поймёшь стукни в асю 6898996.

e1f 19.07.2010 17:11

alert(('|' + 'яблоки|апельсины|тыквы' + '|')
    .replace('|' + 'яблоки' + '|', '|')
    .slice(1, -1));

Viper 20.07.2010 11:48

e1f спасибо заработавало :) и ещё маленький вопросец. ваш пример как вариант циклу или работает быстрее и проще?

DooMer 20.07.2010 12:57

Viper,
цикл - изобретение велосипеда

ZoNT 21.07.2010 13:23

function strDel(s, delim, index){
  s = s.split(delim);
  s.splice(index,1);
  return s.join(delim)
}

alert(strDel('яблоки|апельсины|тыквы', '|', 1));


Часовой пояс GMT +3, время: 13:43.