使用replace(/\s+/g,' ').trim()和trim()无效,求去除输入空格方案
问题解决:去除输入框空格并拼接邮箱后缀
你的代码核心问题是把空格处理方法用在了邮箱后缀字符串上,而不是输入框的内容上,等于根本没处理input1里的空格。
要实现“去除input1所有空格,拼接@gmail.com后赋值给input2、input3”,修正后的代码如下:
var input1 = document.getElementById('myInput1'); var input2 = document.getElementById('myInput2'); var input3 = document.getElementById('myInput3'); input1.addEventListener('change', function() { // 先处理input1的值:去除所有空格 const processedValue = input1.value.replace(/\s+/g, ''); // 拼接邮箱后缀后赋值给两个输入框 const result = processedValue + "@gmail.com"; input2.value = result; input3.value = result; });
<input type="text" id="myInput1" /> <input type="text" id="myInput2" /> <input type="text" id="myInput3" />
关键说明:
replace(/\s+/g, ''):全局匹配所有空白字符(包括空格、换行、制表符等),直接替换为空,彻底去除输入内容里的所有空格;如果只需要去除首尾空格,才用单独的trim()- 先把处理后的输入值存成变量,再统一拼接赋值,代码更简洁易维护
内容的提问来源于stack exchange,提问作者Elaine Byene
相关产品推荐
相关产品推荐

