js实现点击添加一个input节点

实现点击添加一个input节点,可以通过原生JS或者jQuery来实现。下面分别介绍两种方式的实现步骤。

原生JS实现方式

  1. 首先需要在HTML中定义一个按钮和一个容器,当点击按钮时,会在容器中添加一个input节点。
<button id="addInput">添加Input</button>
<div id="container"></div>
  1. 在JS文件中监听按钮的点击事件,并执行添加input节点的逻辑。
let btn = document.getElementById('addInput')
let container = document.getElementById('container')
btn.addEventListener('click', function() {
  let input = document.createElement('input')
  container.appendChild(input)
})

其中,我们首先获取按钮和容器的DOM元素,然后通过addEventListener方法监听按钮的click事件,在事件回调函数中创建一个input节点,最后将创建的节点添加到容器中。

jQuery实现方式

  1. 在HTML中引入jQuery库,并定义一个按钮和一个容器。
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<button id="addInput">添加Input</button>
<div id="container"></div>
  1. 在JS文件中监听按钮的点击事件,并执行添加input节点的逻辑。
let btn = $('#addInput')
let container = $('#container')
btn.on('click', function() {
  container.append('<input>')
})

jQuery的实现方式与原生JS的实现方式相似,不同的地方在于选择DOM元素、添加事件处理函数和添加节点的方法不同。当点击按钮时,我们首先通过jQuery选择器获取按钮和容器的DOM元素,然后通过.on方法监听按钮的click事件,在事件回调函数中使用.append方法添加一个新的input节点。

示例说明

下面将通过两条示例说明原生JS实现方式和jQuery实现方式的区别。

示例一

我们有一个输入框和一个按钮,输入框中有一个默认值。当点击按钮时,会在输入框下方添加一个新的输入框。

原生JS实现方式

HTML代码

<input type="text" value="默认值" id="input">
<button id="addInput">添加</button>
<div id="container"></div>

JS代码

let btn = document.getElementById('addInput')
let container = document.getElementById('container')
let input = document.getElementById('input')

btn.addEventListener('click', function() {
  let newInput = input.cloneNode(true)
  newInput.value = ''
  container.appendChild(newInput)
})

上面的代码中,我们首先获取按钮、容器和输入框的DOM元素,然后绑定按钮的点击事件,在事件回调函数中使用cloneNode方法克隆输入框,将克隆的节点里的值清空,并将节点添加到容器中。

jQuery实现方式

HTML代码

<input type="text" value="默认值" id="input">
<button id="addInput">添加</button>
<div id="container"></div>

JS代码

let btn = $('#addInput')
let container = $('#container')
let input = $('#input')

btn.on('click', function() {
  container.append(input.clone().val(''))
})

上面的代码中,我们使用了jQuery的选择器和操作方法,代码量更少。在按钮的click事件回调函数中,先通过选择器获取容器和输入框的DOM元素,然后使用jQuery的.clone和.val方法复制并清空输入框的值,并通过.append方法添加新的输入框节点到容器中。

示例二

我们有一个输入框,点击按钮会将输入框的值添加到一个列表中。

原生JS实现方式

HTML代码

<input type="text" id="input">
<button id="addToList">添加到列表</button>
<ul id="list"></ul>

JS代码

let btn = document.getElementById('addToList')
let list = document.getElementById('list')
let input = document.getElementById('input')

btn.addEventListener('click', function() {
  let li = document.createElement('li')
  li.textContent = input.value
  list.appendChild(li)
  input.value = ''
})

上面的代码中,我们通过JS获取按钮、列表和输入框的DOM元素,然后在按钮的点击事件回调函数中,使用.createElement方法创建一个新的li节点,将输入框中的值添加到新节点中,再通过.appendChild方法添加节点到列表中,并将输入框的值清空。

jQuery实现方式

HTML代码

<input type="text" id="input">
<button id="addToList">添加到列表</button>
<ul id="list"></ul>

JS代码

let btn = $('#addToList')
let list = $('#list')
let input = $('#input')

btn.on('click', function() {
  list.append($('<li>').text(input.val()))
  input.val('')
})

上面的代码中,我们先通过jQuery选择器获取按钮、列表和输入框的DOM元素,然后在按钮的点击事件回调函数中,使用jQuery的.append方法添加一个新的li节点到列表中,将输入框的值添加到新节点中并清空输入框。需要注意的是,我们在.append方法中使用了一个匿名函数,用于创建新的li节点,并设置其文本内容。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js实现点击添加一个input节点 - Python技术站

(1)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JS动态加载脚本并执行回调操作

    JS动态加载脚本并执行回调操作是一种常见的前端开发技巧,可以提高网站的性能和用户体验。下面我将为大家详细讲解这个过程的完整攻略。 首先,我们需要了解两个关键技术:动态创建script标签和回调函数。通过动态创建script标签,我们可以在不刷新页面的情况下,在当前页面中加载外部的.js脚本文件。而回调函数则是在这个外部脚本加载完毕后执行的函数,可以让我们在脚…

    JavaScript 2023年5月27日
    00
  • JavaScript中判断为整数的多种方式及保留两位小数的方法

    JavaScript中判断为整数的多种方式及保留两位小数的方法 判断为整数的多种方式 在JavaScript中,判断一个数是否为整数是经常需要用到的操作。下面列出了常见的几种方法: 取模运算 利用数学中取模运算的特性,即整数x对于任意不等于0的正整数y,x%y的结果只可能是0到y-1之间的整数,如果x % 1等于0,则说明它为整数。具体代码如下: funct…

    JavaScript 2023年6月10日
    00
  • JavaScript运行过程中的“预编译阶段”和“执行阶段”

    JavaScript代码的运行分为两个阶段:预编译阶段和执行阶段。在预编译阶段,JavaScript引擎会进行一些预处理操作,包括变量声明、函数声明、变量提升等。执行阶段则是按照预处理结果进行实际代码的执行。 预编译阶段 变量声明 在预编译阶段,JavaScript引擎会将代码中所有的变量声明存储到作用域中。例如: console.log(a); // un…

    JavaScript 2023年5月27日
    00
  • js字符串转换成数字与数字转换成字符串的实现方法

    JS 字符串转换成数字和数字转换成字符串分别涉及到 JS 数据类型的转换。下面,我们分别详细讲解这两种数据类型间的转换实现方法: JS 字符串转换成数字 JS 字符串转换成数字主要用到以下两个函数: 1. parseInt(string, radix) 这个函数将给定的字符串参数转换成整数类型,并返回其整数值。 string:需要被转换成整数的字符串 rad…

    JavaScript 2023年5月28日
    00
  • 简单封装js的dom查询实例代码

    下面开始讲解“简单封装js的dom查询实例代码”的攻略。 1. 理解DOM及其相关API 在开始封装DOM查询代码之前,首先需要对DOM及其相关API有一定的了解。请参考以下内容: 1.1 DOM是什么? DOM是文档对象模型(Document Object Model)的缩写,是一种用于访问和操作HTML和XML文档的编程接口。DOM将文档作为由节点(包括…

    JavaScript 2023年6月10日
    00
  • 微信小程序绑定手机号获取验证码功能

    下面是关于“微信小程序绑定手机号获取验证码功能”的完整攻略: 一、注册云服务 首先需要在微信公众平台中注册云服务,并且开通云开发环境。具体步骤如下: 登录微信公众平台,在左侧菜单中找到“设置”选项并点击 在“设置”页面中选择“开发者工具”,进入到开发者工具页面 点击“云开发”选项,并进行云服务注册和环境创建 二、创建验证码云函数 创建一个名为“getCode…

    JavaScript 2023年6月10日
    00
  • JavaScript定时器使用方法详解

    下面是“JavaScript定时器使用方法详解”的完整攻略: JavaScript定时器使用方法详解 JavaScript定时器是指在指定时间间隔内以指定频率执行指定函数的机制,它主要有两种定时器函数:setInterval和setTimeout。 setInterval setInterval函数的语法如下: setInterval(function, d…

    JavaScript 2023年5月27日
    00
  • JS限制输入框输入的实现代码

    实现JS限制输入框输入有多种方法,本攻略将介绍两种实现方式,分别是使用input事件和使用正则表达式。下面将分别进行详细讲解。 使用input事件进行限制输入 input事件可监听输入框中的输入,可以通过在事件回调函数中处理字符串来限制输入。下面是一个示例代码,将限制输入框只能输入数字: <input type="text" id=…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部