javascript - 如何在多次单击时添加输入字段
问题描述
我正在尝试创建一个按钮,每次单击它时都会创建一个输入字段。目前,当我单击它时,它只创建一个输入字段,我怎样才能使每次单击它时都会得到一个输入字段?
这是我的html:
<div id="new-input-container"> </div>
<p class="add-new-shareholders-p"><i class="fa fa-plus-circle fa-lg" @click="createNewInputFields"/>
和我的功能:
createNewInputFields() {
var container = document.getElementById('new-input-container')
container.innerHTML = "<input type='text'/>";
}
解决方案
根据您的逻辑,您可以尝试以下解决方案之一:
第一个逻辑:按数字创建输入
<template>
<div id="app">
<input type="text" v-for="i in numberOfInputs" :key="i" />
<br />
<button @click="addInput">Add input</button>
</div>
</template>
<script>
export default {
name: "App",
data: () => ({
numberOfInputs: 0,
}),
methods: {
addInput: function () {
this.numberOfInputs++;
},
},
};
</script>
第二个逻辑:按值创建输入
<template>
<div id="app">
<input
type="text"
v-for="(value, i) in values"
:key="i"
v-model="values[i]"
/>
<br />
<button @click="addInput">Add input</button>
</div>
</template>
<script>
export default {
name: "App",
data: () => ({
values: [],
}),
methods: {
addInput: function () {
let value = "";
this.values.push(value);
},
},
};
</script>
推荐阅读
- javascript - 为什么我的角色权限代码不起作用?(discord.js)
- docker - Lumen Nginx 资产路径问题
- php - 如何使用 $_SESSION 显示消息
- r - 如何根据第二个可能的值范围合并两个数据帧,但保留第一个的值?
- sql - sql查询查找租赁天数大于等于10天的客户
- composer-php - 在 Composer 中创建项目时如何使用全局 composer.json?
- c# - 声音分析仪使用 naudio 进行 48000 个样本/秒的声音。我可以使用 1024 的循环样本大小吗?
- telegram - 电报组中的 301 重定向
- javascript - 跳到下一课,或下一模块的第一节
- sql - 谁能告诉我,内部联接在 SQL 中是如何工作的?