28

我有一个包含一串内容的 div。内容未存储在变量中,我想删除此 div 中文本的最后一个字符。请问有什么帮助吗?

更多信息:


我有一个文本字段,在文本字段中输入文本后,文本以大写形式出现在 div 中。当用户点击退格键时,我希望删除 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);

我也尝试将#theInput 的值存储在一个变量中,然后打印它,但这不起作用。有任何想法吗 ?

4

3 回答 3

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

演示--> http://jsfiddle.net/d72ML/8/

于 2013-05-14T09:56:24.937 回答
7

你确定你只想删除最后一个字符。如果用户从单词中间按退格键怎么办。最好从字段中获取值并替换 divs html。上键

$("#div").html($("#input").val());
于 2013-05-14T10:09:33.683 回答
3
var string = "Hello";
var str = string.substring(0, string.length-1);
alert(str);

http://jsfiddle.net/d72ML/

于 2013-05-14T09:57:10.530 回答