javaScript和jQuery获取、设置textarea标签的内容(常见问题)

这篇具有很好参考价值的文章主要介绍了javaScript和jQuery获取、设置textarea标签的内容(常见问题)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

javaScript和jQuery获取、设置textarea标签的内容(取值和赋值)

昨天晚上在写代码的时候前端遇到一个bug,在js取值textarea中,我使用了getElementById方法对textarea标签取值,但不论如何取值,始终无法成功取到页面上输入的值并进行Ajax请求,一开始以为是ajax与后端接口之间数据传输出问题了,后来经过排查,就是对于textarea标签取值失败的问题,于是上网查阅了一下资料。

下面是我的错误源码

function addComment(){


        //后端需要参数 Integer postId,Comment comment,HttpSession httpSession
        // 创建一个URLSearchParams对象并传入URL
        var params = new URLSearchParams(window.location.search);
        // 获取id参数值
        var id = params.get('id');

        var commentDTO = {
            //就是下面这行取值发生了错误
            text:document.getElementById("addComment"),

        };

        $.ajax({

            url:"http://localhost:8080/addComment/"+id,
            type:"POST",
            data: JSON.stringify(commentDTO),
            contentType:"application/json",
            //session
            xhrFields:{
                withCredentials:true
            },
            success:function (data){
                if (data.code===0){
                    if (data.msg==="新增成功"){
                        alert(data.msg);
                    }else if (data.msg==="新增失败,请联系管理员查看原因"){
                        alert(data.msg);
                    }
                }else if (data.msg){
                    alert(data.msg);
                }
            }

        })
    }

对于标签textarea 的取值,顺便整理一下它的取值和赋值。

HTML部分:

<textarea id="text" name="" id="" cols="30" rows="10"></textarea>
<button id="btn">提交</button>

javaScript 获取 textarea 的值

通过 element.valueelement.innerHTML 获取, .value 亲测有效。

js 代码如下:

<script>
var text = document.getElementById("text"),
    btn=  document.getElementById("btn");
btn.onclick = function () {
  var info = text.value;//方法一
  var info = text.innerHTML;//方法二
  console.log(info);
}
</script>

jQuery 获取 textarea 的值

textarea 是表单元素,所以 val() 可用;它又是闭合标签,所以 html()text() 可用。

js 代码如下:

var info = $("#text").val();//方法1
var info = $("#text").text();//方法2
var iiinfo = $("#text").html();//方法3

textarea 的赋值

//javaScript赋值
text.innerHTML = "你好,地球!";//方法一
text.value = "你好,中国!";//方法二
text.innerText = "绿色地球!";//方法三

//jq赋值
$("#text").html("你好、我好、大家好!");//方法1
$("#text").val("幸福的日子");//方法2
$("#text").text("html好学");//方法3

jQuery不同方式下的取值也有所不同

1.我们通过给textarea元素设置id,通过id查找到元素获取val的方式行不通。详情见代码。具体原因还未查找到,有了解的码友请指点一二。

2.通过jQuery的选择器查找到元素,通过.val()的方法可以获取到初始的textarea的内容,也可以获取到修改以后的textarea的内容。

3.通过jQuery的选择器查找到元素,通过.text()的方法只能获取到初始的textarea的内容。

4.通过jQuery的选择器查找到元素,通过.html()的方法只能获取到初始的textarea的内容。

总结:

  1. 通过jQuery获取textarea新输入的内容时,需要使用筛选器和.val()组合进行获取。(常用)
  2. 通过jQuery获取textarea默认的内容时,需要使用筛选器和.text()组合进行获取或使用筛选器和.html()组合进行获取。

代码段如下:文章来源地址https://www.toymoban.com/news/detail-753870.html



<!DOCTYPE html>
<html lang="en">


<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>获取textarea内容</title>
</head>

<body>
    <div class="title">
        <span class="xinghao">*</span>
        内容描述
    </div>
    <textarea name="remark" id="remark" rows="8" placeholder="请您输入作品概述" class="content">123456</textarea>
	<div class="btn-container" onclick="onSubmte()">获取textArea内容</div>
</body>

<script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
<script>
    function onSubmte() {
        console.log("remark:", $("#remark").val()) //remark: undefined
        console.log("remark:",$("textarea[name=remark]").val()) // remark: 123456
        console.log("remark:",$("textarea[name=remark]").text()) // remark: 1234
        console.log("remark:",$("textarea[name=remark]").html()) // remark: 1234
    }
</script>

</html>

到了这里,关于javaScript和jQuery获取、设置textarea标签的内容(常见问题)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python爬虫——BeautifulSoup,获取HTML中文档,标签等内容

    将复杂的HTML文档转换成一个复杂的树形结构,每个结点都是一个Python对象,所有对象可以分为四种: Tag NavigableString BeautifulSoup Comment 首先要引入该函数,再打开相应的html文件读取其中的内容,在使用BeautiSoup对其进行解析,解析的时候要使用相应类型的解析器html.parser bs当中

    2024年02月06日
    浏览(53)
  • selenium无法获取到标签的文本内容(text)的解决方法

    在我们使用selenium进行抓取网页的时候,可能有的时候会抓取不到内容。 例如:driver.find_element_by_xxx().text() 为空的解决办法    在用driver.find_element_by_xxx().text()获取文本的时候,得到的文本为空, 那么当前定位的元素可能被隐藏了。 我们先查看当前的元素的原始代码   我们

    2023年04月11日
    浏览(43)
  • 【正则表达式】获取html代码文本内所有<script>标签内容

    一. 背景 之前要对学生提交的html代码进行检查,在获取了学生提交的html代码文本后,需要使用正则去截取内部的script标签内容做进一步的检查。 假设得到html文本如下(不是代码),我们要得到全部的script标签内容并提取出来。 看上去不难,但是实际操作起来有一定的坑,

    2024年01月17日
    浏览(51)
  • HTML <textarea> 标签

    textarea 标签定义多行的文本输入控件。 文本区中可容纳无限数量的文本,其中的文本的默认字体是等宽字体(通常是 Courier)。 可以通过 cols 和 rows 属性来规定 textarea 的尺寸,不过更好的办法是使用 CSS 的 height 和 width 属性。 注释:在文本输入区内的文本行间,用 \\\"%OD%OA\\\" (

    2024年02月10日
    浏览(39)
  • JavaScript 获取 input 输入框内容的方法

    在 JavaScript 中获取 input 输入框内容的方法有以下几种: 使用 document.getElementById 方法获取输入框元素,再通过 value 属性获取输入框内容。示例代码如下 var input = document.getElementById(\\\"myInput\\\"); var inputValue = input.value;   使用 document.querySelector 方法获取输入框元素,再通过 value 属性

    2024年02月05日
    浏览(55)
  • JS中常用的的选择器,JavaScript获取HTML标签元素

    getElementById是JavaScript中的一个DOM方法,用于根据元素的id属性获取HTML文档中的元素。该方法接受一个字符串参数,即元素的id属性值,并返回具有该id属性值的元素。如果没有找到匹配的元素,则返回null。 以下是一个示例,演示如何使用getElementById获取页面中的元素: 在这个

    2024年02月04日
    浏览(56)
  • html:去除input/textarea标签的拼写检查

    默认情况下, textarea 会启动拼写和语法检查,表现效果就是单词拼写错误会出现红色下划线提示 效果 有时,我们并不需要拼写检查,可以通过配置属性 spellcheck=\\\"false\\\" 去除拼写和语法检查 效果 参考 Input标签自动校验功能去除实现 https://developer.mozilla.org/zh-CN/docs/Web/HTML/Eleme

    2024年02月14日
    浏览(78)
  • textarea 内容自适应,高度向上扩展

    监听 textarea 的 input 事件的 scrollHeight 变化(scrollHeight 元素内容高度),赋值给 height。 再给 textarea 设置最大最小高度,padding 为 0(它自身的),保证上下限。

    2024年02月03日
    浏览(55)
  • textarea文本框根据输入内容自动适应高度

    第一种: 第二种: 加一个监听该文本框内容变化的方法  oninput ,然后在该方法里手动计算文本框的高度并实现自适应:

    2024年01月21日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包