gpt4 book ai didi

javascript - 从段落中删除完整的一个字符串

转载 作者:太空宇宙 更新时间:2023-11-03 22:59:27 26 4
gpt4 key购买 nike

我有一个段落,当用户按单个退格键时,我想从中删除一个完整的字符串。例如在雅虎邮件中。当我们撰写电子邮件并在“收件人或抄送或密件抄送”部分写入电子邮件地址时,当用户按单个退格键时,完整的电子邮件地址将被删除。我想要那个功能,但在段落中。

最佳答案

使用退格键删除电子邮件地址只是删除字符,直到您点击空格(或; 取决于您的用例)字符。
所以基本上你在这里真正要问的是:
如何在 space 字符作为分隔符时 substring 字符串的最后部分。
这是一个简单的片段作为示例:
编辑:
我更新了代码片段以在单击退格键或删除键时支持插入符号(光标)位置。

$('#delete').on('click', function(){
var $input = $('#mystring');
var nextStr = deleteUpToSpace($input.val());
$input.val(nextStr);
});

$('#mystring').on('keyup', function(e){
var currentCursorPoisitoin = this.selectionStart;
if(e.keyCode == 8 || e.keyCode == 46){ // backspace or delete keys
var $input = $(this);
var nextStr = deleteBasedOnPosition($input.val(), currentCursorPoisitoin);
$input.val(nextStr);
}
});

function deleteUpToSpace(str){
var index = str.lastIndexOf(" ");
var nextStr = str.substring(0, index);
return nextStr;
}

function deleteBasedOnPosition(str, position){
var strUpToPosition = str.slice(0, position);
var lastIndexOfSpace = strUpToPosition.lastIndexOf(" ");
var strToRemove = strUpToPosition.substring(lastIndexOfSpace, position);
var nextStr = str.replace(strToRemove, "");
return nextStr;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="mystring" value="this is a test string">
<button id="delete">Delete</button>

关于javascript - 从段落中删除完整的一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43890071/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com