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实现多物体运动的方法详解 在Web开发中,常常需要实现多个物体同时进行运动的效果,这时我们可以使用JavaScript来控制多个DOM元素的运动。本文将详细讲解JS实现多物体运动的方法。 步骤一:获取多个DOM元素的初始状态 在程序开始运行之前,我们需要获取多个DOM元素的初始状态,这些状态包括元素的初始位置、大小、颜色等信息。在JavaScript中可…

    JavaScript 2023年6月11日
    00
  • JS定义网页表单提交(submit)的方法

    JS定义网页表单提交(submit)的方法可以使用两种方式: 1. 使用 HTML 中的 元素 使用HTML中的<form>元素来提交表单,需要给<form>元素设置一个id,然后通过document.getElementById()方法获取该元素,接着使用submit()方法提交表单内容。 示例代码 <form id=&quo…

    JavaScript 2023年6月10日
    00
  • 浅谈javascript的url参数parse和build函数

    浅谈JavaScript的URL参数parse和build函数 在编写JavaScript的时候,我们经常需要操作URL链接中的参数。下面我们来看一下如何使用JavaScript中的URL参数parse和build函数来处理URL链接中的参数。 URL参数parse函数 URL参数parse函数是用来将URL链接中查询字符串部分解析成一个JavaScript…

    JavaScript 2023年6月11日
    00
  • js 格式化时间日期函数小结

    JS 格式化时间日期函数小结 在编写 web 应用程序或者其他应用程序时,日期和时间往往是非常重要的元素。而 JS 提供了许多内置的函数和方法来操作日期和时间,这里提供一些受欢迎的方法,同时会介绍如何使用它们来格式化日期和时间。 定义日期对象 在使用 JS 处理日期和时间时,通常使用内置的 Date 对象。我们可通过以下方式创建一个日期对象: const c…

    JavaScript 2023年5月27日
    00
  • jquery.qtip提示信息插件用法简单实例

    下面就来详细讲解“jquery.qtip提示信息插件用法简单实例”的完整攻略。 什么是jquery.qtip提示信息插件 jquery.qtip提示信息插件是一个jQuery插件,它可以用来在页面中快速、方便地创建提示信息。其使用简单,功能强大,支持各种提示效果,是一款非常实用的前端开发工具。 jquery.qtip提示信息插件的安装和使用 jquery.q…

    JavaScript 2023年6月11日
    00
  • javascript比较两个日期的先后示例代码

    首先,比较两个日期的先后,在JavaScript中可以通过将两个日期对象(Date对象)转化为毫秒数,然后进行比较。具体步骤如下: 首先创建两个日期对象,可以通过传入参数的方式或者使用无参数的Date()构造函数来创建,示例如下: let date1 = new Date(‘2021-01-01’); let date2 = new Date(‘2021-0…

    JavaScript 2023年5月27日
    00
  • 19个很有用的 JavaScript库推荐

    19个很有用的 JavaScript库推荐攻略 JavaScript 库的使用在现代 Web 开发中变得越来越重要,它们能够大大地提高开发效率。在这篇文章中,我们将介绍 19 个很有用的 JavaScript 库,通过这篇攻略,你将学习到这些库的使用方法及其在项目中的应用。 1. jQuery jQuery 是一个轻量级的 JavaScript 库,它简化了…

    JavaScript 2023年5月18日
    00
  • javascript基本数据类型和对象类型归档问题解析

    JavaScript基本数据类型和对象类型归档问题解析 基本数据类型 在JavaScript中,基本数据类型分为以下几种: Number:数字类型,包括整数和浮点数。 String:字符串类型。 Boolean:布尔类型,包括true和false。 Undefined: 值为undefined的类型。 Null:值为null的类型。 Symbol:ES6新增…

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