I僅在按鍵時替換dot(.)為特殊字符。"?"dot(.)
我沒有太多的編碼知識。
我找到了一個函式,但是當我在文本區域粘貼文本檔案時,它將文本檔案中存在的所有點替換為特殊字符"?"。
如果我錯了,請在代碼中編輯或建議適當的代碼。
<!doctype html>
<html dir='ltr' lang='en-GB'>
<head>
<meta charset="UTF-8">
<title>test page</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
$(function() {
$('textarea').on("keyup", function(e) {
var val = $(this).val();
var str = val.replace('.', '?');
$(this).val(str);
});
});
</script>
</head>
<body>
<textarea></textarea>
</body>
</html>
uj5u.com熱心網友回復:
要替換最后一個.只需鍵入。按住 dot 時它不處理這種情況。
$(function() {
$('textarea').on("keyup", function(e) {
if (e.key === '.') {
const index = this.selectionStart;
const text = $(this).val();
if (index > 0 && text.charAt(index - 1) === '.') {
$(this).val(text.substr(0, index - 1) '|' text.substr(index));
this.selectionStart = index;
this.selectionEnd = index;
}
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea></textarea>
uj5u.com熱心網友回復:
如果輸入是點,則替換最后一個字符應該可以修復它:
$(this).val($(this).val().replace(/.$/,"|"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
$(function() {
$('textarea').on("keyup", function(e) {
if(e.key==='.'){
let inputVal = $(this).val();
inputVal = inputVal.substring(0, inputVal.length - 2);
inputVal = inputVal '|';
$(this).val(inputVal);
}
});
});
</script>
<textarea></textarea>
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/362138.html
標籤:javascript 查询
