如何在点击时从输入框中删除最后一个字符?

5

我有一个表单,当按钮被点击时,它会将一个值输入到一个输入字段中。我想添加另一个按钮来删除最后添加的字符。如何使用jQuery实现这个功能?


5
你尝试过什么?你能在jsfiddle.net上发布一个简单的页面示例吗? - nathan gonzalez
每次按钮点击时,您是指在字符串末尾附加了一个新字符吗? - arjuncc
这基本上是我目前正在做的... http://jsfiddle.net/jeni/jfs4x/ - jeni
你需要运气好才能得到“给我那段代码”。 - dejjub-AIS
@NoobASThreeDeveloper - 嗯? - jeni
显示剩余2条评论
3个回答

9
<script>
function addTextTag(txt)
{
document.getElementById("text_tag_input").value+=txt;
}
function removeTextTag()
{
var strng=document.getElementById("text_tag_input").value;
document.getElementById("text_tag_input").value=strng.substring(0,strng.length-1)
}
</script>

<input id="text_tag_input" type="text" name="tags" />

    <div class="tags_select">
    <a href="javascript:addTextTag('1')">1</a>
    <a href="javascript:addTextTag('2')">2</a>
    <a href="javascript:addTextTag('3')">3</a>
    <a href="javascript:removeTextTag()">delete</a>
</div>

使用修改过的你的代码本身尝试


3
简单的答案是,如果你正在使用jQuery,可以像这样操作:
//select the button, add a click event
$('#myButtonId').on('click',function () { 
    //get the input's value
    var textVal = $('#myInputId').val();
    //set the input's value
    $('#myInputId').val(textVal.substring(0,textVal.length - 1));
});

如果我尝试使用它,控制台会显示“TypeError: textVal.length不是一个函数”。 - Cody Guldner
@CodyGuldner,是的,那一定是个打字错误。length是一个属性。 - nathan gonzalez
哦,嗯。应该注意到那个!谢谢!加1分因为这是我需要的! - Cody Guldner

0
var lastChar = function (x) {
        "use strict";
        var a = document.getElementById(x),
            b = a.value;
        a.value = b.substring(0, b.length - 1);
    };

不需要 jQuery。x 变量是您要篡改的输入框的 ID。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接