#jquery #html
#jquery #HTML
Вопрос:
У меня есть элемент span, который является просто текстом. Я продолжаю добавлять к нему на основе определенных событий. Это отлично работает при использовании $("#id").append(txt);
. Однако я не могу удалить его. Я попытался использовать $("#id").slice(0, -1)
, так как $("#id").val().slice(0, -1);
значения, отображаемые на странице, остаются неизменными. Должен ли я использовать substr
или что-то в этом роде? Пробовал Google, но не смог придумать ничего подобного? Возможно ли это вообще с помощью jquery?
Комментарии:
1. Вы хотите избавиться от последних четырех символов или только от последнего символа?
.slice(0,-1)
для последнего символа,.slice(0,-4)
для последних четырех.2. @Luxelin. отредактировано, чтобы устранить путаницу.
Ответ №1:
Вы можете использовать так:
$(selector).text(function(i,v){
return v.slice(0,-4);
});
Комментарии:
1. Мне особенно нравится эта функция jQuery 🙂
2. @RajaprabhuAravindasamy Как так? Селектор идентификаторов выдает не более одного элемента, я не понимаю, как это влияет на его выполнимость.
3. @C-link, я новичок в этом, поэтому в моем случае так и должно быть
$("#id").text(function(i, v){ return v.slice(0, -4); };
. Это должно изменить текст span?
Ответ №2:
Попробуйте это после добавления этой строки $("#id").append(txt);
var str = $("#id").text(); // this hold appended text
alert(str.substring(0,str.length - 1));
или
str.slice(0,-1)
Ответ №3:
на самом деле, с помощью slice() вы можете сделать это еще проще:
var originalText = $("#id").text();
var result = originalText.slice(0, -1);
Ответ №4:
Возьмите текст, возьмите его подстроку, обрезав последний символ, а затем снова поместите значение в #id
$k = $('#id').text();
$k.substring(0,$k.length-1);
$('#id').text($k);