仅从输入值中的粘贴值中获取第一个字符串

Taking only first string from paste value in input value

我只想从复制粘贴值中获取第一个值。

例如: 我的复制文本是:Lorem Lipsum Test

所以当我复制上面的文本并将其粘贴到 HTML 输入字段时,只需要 "Lorem" 我不需要其他文本

有什么办法可以实现这些东西吗?

提前致谢。

您可以添加一个输入事件来查看您要添加到您的元素的内容。此代码将拆分您粘贴的文本并仅添加第一个单词。

const input = document.querySelector('input');
const log = document.getElementById('values');

input.addEventListener('input', updateValue);
var previousValue = "";

function updateValue(e) {
  log.textContent = e.data;
  if (e.data && e.inputType == "insertFromPaste") {
    if (e.data.length > 1) {
      let val = e.data.split(" ")[0];
      let str = previousValue + val;
      e.target.value = str;
    }
  }
  previousValue = e.target.value;
}
<input placeholder="Enter some text" name="name"/>
<p id="values"></p>

它只是 returns 始终是字符串输入的第一个单词,您必须清除复制新值然后它会显示新复制字符串的第一个单词。

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
   
  $("#getfirstword").on("keyup", function(e) {
  debugger
    // do stuff!
     var str =  $(this).val();
//Now i separate them by "|"
var str1 = str.split('|');

//Now i want to get the first word of every split-ed sting parts:
 var firstWord ="";
for (var i=0;i<str1.length;i++)
{
    //What to do here to get the first word :)
  firstWord = str1[i].split(' ')[0];
    
}
$("#input1").val(firstWord);
})
});
</script>
</head>
<body>

 <input id="getfirstword" /> 
<input id="input1" disabled/> 
</body>
</html>