首页 文章

删除jQuery.trim()忽略的textarea中的空格

提问于
浏览
1

我有一个 <textarea> ,其中包含一个由php调用的文本 . 文本包含用户的ID,因此每个用户都有不同的ID . 但是,html看起来总是这样:

<div>
    <textarea id="text" readonly="readonly">"        example text       "</textarea>
</div>

如何删除这些空格 . 我在这里尝试了多个修剪建议,但没有一个在起作用 . textarea 无法更改为 divp .

2 回答

  • 1

    .replace() 中使用匹配多个空格的正则表达式模式 /\s{2,}/g 并将其从字符串中删除 .

    $("#text").val((i, v) => v.replace(/\s{2,}/g, ''));
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div>
        <textarea id="text" readonly="readonly">"        example text       "</textarea>
    </div>
    

    您也可以使用String.slice()从字符串的开头和结尾删除 " ,然后使用 .trim() 删除空格 . 最后用 "" 包裹字符串

    $("#text").val((i, v) => `"${v.slice(1, -1).trim()}"`);
    
  • 0

    您可以使用正则表达式删除引号和空格

    $("#text").val($("#text").val().replace(/^"\s+(.*?)\s+"$/,"$1"));
    console.log(">"+$("#text").val()+"<")
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div>
        <textarea id="text" readonly="readonly">"        example text       "</textarea>
    </div>
    

相关问题