Javascript: как удалить последний символ из div или строки?

у меня есть div со строкой содержимого в нем. Контент не хранится в переменной и я хочу удалить последний символ текста в div. Пожалуйста, помогите.

Подробнее:


у меня есть текстовое поле, и при вводе текста в текстовое поле текст появляется в div крупным шрифтом. Когда пользователь нажимает клавишу back-space, я хочу, чтобы последний символ в div был удален. Я в основном использую jQuery для достижения этого. Вот мой код:

$(document).ready(function(){
    $("#theInput").focus();   //theInput is the text field

    $('#theInput').on('keypress', printKeyPress);

    function printKeyPress(event)
    {
        //#mainn is the div to  hold the text
        $('#mainn').append(String.fromCharCode(event.keyCode));
        if(event.keyCode ==8)   //if backspace key, do below
        {
            $('#mainn').empty();  //my issue is located here...I think
        }
    }

});

Я попытался $('#mainn').text.slice(0,-1);

Я тоже пробовал хранить значение #ввода в переменную, а потом распечатать, но это не сработало. Есть идеи ?

3 ответов


$('#mainn').text(function (_,txt) {
    return txt.slice(0, -1);
});

демо --> http://jsfiddle.net/d72ML/8/


вы уверены, что хотите удалить только последний символ. Что делать, если пользователь нажимает backspace от середины слова.. Его лучше получить значение из поля и заменить divs html. На keyup

$("#div").html($("#input").val());

var string = "Hello";
var str = string.substring(0, string.length-1);
alert(str);

http://jsfiddle.net/d72ML/