You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将jQuery的val().split()代码转换为Vanilla JS时遇到错误

问题分析与修正代码

你的Vanilla JS代码有两个关键问题导致功能失效:

  1. 原生数组没有remove()方法:jQuery对数组做了扩展,提供了remove()方法,但原生JS数组不存在这个方法,调用会直接报错。而且你错误地尝试将这个不存在方法的返回值重新赋值给delfino,这会让变量变成undefined。
  2. 未将处理结果写回textarea:原jQuery代码最后会把拼接后的字符串重新赋值给文本框,但你的代码处理完数组后,没有把结果赋值给camPito.value,所以文本框内容不会有任何变化。

修正后的代码:

let camPito = document.getElementById("campotxt");
function updateTextBox(nehemyah) {
    let delfino = camPito.value.split("\n");
    // 用splice删除指定索引的元素,第二个参数1表示仅删除1个元素
    delfino.splice(nehemyah, 1);
    // 将处理后的数组拼接为字符串,赋值回文本框更新内容
    camPito.value = delfino.join("\n");
}

关键修正说明

  • 直接通过split("\n")拆分文本框内容为数组,无需分步赋值
  • 用原生数组的splice(index, count)方法替代jQuery的remove(),该方法会直接修改原数组
  • 必须将拼接后的字符串赋值给camPito.value,才能让textarea显示更新后的内容

内容的提问来源于stack exchange,提问作者SadDeepLoper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 06:42:27