Uniapp表单提交

发布于:2024-07-10 ⋅ 阅读:(131) ⋅ 点赞:(0)

template中:

<template>
	<view class="">
		<button class="tianjia" @click="tianjia">添加</button>
		<view class="divOne" v-show="a">
			<text class="guanbi" @click="guanbi">X</text>
			<view class="divTwo">
				<text>姓名:</text>
				<input type="text" class="iptOne" v-model="xm">
			</view>
			<view class="clear"></view>
			<view class="divTwo">
				<text>年龄:</text>
				<input type="number" class="iptOne" v-model="nl">
			</view>
			<view class="clear"></view>
			<view class="uni-form-item uni-column">
				<radio-group name="radio" @change="handleSexChange">
					<text class="text1">性别:</text>
					<label>
						<radio value="男" /><text>男</text>
					</label>
					<label class="labs">
						<radio value="女" /><text>女</text>
					</label>
				</radio-group>
			</view>
			<view class="uni-form-item uni-column">
				<radio-group name="radio" @change="handleNationChange">
					<text class="text1">民族:</text>
					<label>
						<radio value="汉" /><text>汉族</text>
					</label>
					<label class="labs">
						<radio value="满" /><text>满族</text>
					</label>
				</radio-group>
			</view>
			<view class="uni-form-item uni-column">
				<checkbox-group @change="handleHobbyChange">
					<text class="text1">爱好:</text>
					<label>
						<checkbox value="唱歌" /><text>唱歌</text>
					</label>
					<label class="labs">
						<checkbox value="跳舞" /><text>跳舞</text>
					</label>
					<label class="labs">
						<checkbox value="打篮球" /><text>打篮球</text>
					</label>
				</checkbox-group>
			</view>
			<button class="tijiao" @click="tujiao()">提交</button>
		</view>
		<table class="tab" border="1">
			<thead>
				<tr>
					<th>姓名</th>
					<th>年龄</th>
					<th>性别</th>
					<th>民族</th>
					<th>爱好</th>
					<th>操作</th>
				</tr>
			</thead>
			<tbody>
				<tr v-for="(item,index) in arr" :key="index">
					<td>{{item.xm1}}</td>
					<td>{{item.nl1}}</td>
					<td>{{item.xb1}}</td>
					<td>{{item.mz1}}</td>
					<td>{{item.ah1}}</td>
					<td><button class="shanchu" @click="shanchu(index)">删除</button></td>
				</tr>
			</tbody>
		</table>
	</view>
</template>

script中:

<script>
	export default {
		data() {
			return {
				xm: '',
				nl: '',
				sex: '',
				nation: '',
				hobbies: [],
				a: false,
				arr: [
					{ xm1: '小红', nl1: '18', xb1: '男', mz1: '汉', ah1: '唱歌' },
					{ xm1: '小花', nl1: '18', xb1: '女', mz1: '满', ah1: '唱歌,跳舞' }
				]
			};
		},
		methods: {
			handleSexChange(e) {
				this.sex = e.detail.value;
			},
			handleNationChange(e) {
				this.nation = e.detail.value;
			},
			handleHobbyChange(e) {
				this.hobbies = e.detail.value;
			},
			shanchu(index) {
				if (confirm('确定要删除吗?')) {
					this.arr.splice(index, 1);
				}
			},
			tujiao() {
				const obj = {
					xm1: this.xm,
					nl1: this.nl,
					xb1: this.sex,
					mz1: this.nation,
					ah1: this.hobbies.join(', ')
				};
				this.arr.push(obj);
			},
			tianjia() {
				this.a = true;
			},
			guanbi() {
				this.a = false;
			}
		}
	}
</script>

style中:

<style>
	.quxiao {
		width: 100px;
		float: left;
		margin-left: 20px;
		margin-top: 20px;
	}

	.queren {
		width: 100px;
		float: left;
		margin-left: 100px;
		margin-top: 20px;
	}

	.input1 {
		width: 300px;
		height: 30px;
		background: #fff;
		margin-top: 10px;
		margin-left: 20px;
		border-radius: 10px;
	}

	.box3 {
		width: 700rpx;
		height: 300px;
		background: rgba(0, 0, 0, 0.3);
		position: relative;
		top: -120px;
		margin: auto;
		border-radius: 10px;
		text-align: center;
	}

	.btn1 {
		width: 100px;
		clear: both;
	}

	.shanchu {
		width: 70px;
		height: 40px;
		background: indianred;
		color: #fff;
		margin: auto;
	}


	.tab {
		width: 750rpx;
		line-height: 30px;
		border-collapse: collapse;
		text-align: center;

	}

	.tijiao {
		width: 300px;
		margin: auto;
		margin-top: 20px;
		background: #e8909c;
		color: #fff;
	}

	.text1 {
		margin-top: 20px;
	}

	.labs {
		margin-left: 10px;
	}

	.uni-column {
		margin-left: 60px;
		margin-top: 10px;
	}

	.divOne {
		margin-top: 10px;
	}

	.iptOne {
		width: 300px;
		height: 50px;
		border: 1px solid #707070;
		border-radius: 10px;
	}

	.divTwo {
		margin-top: 10px;
		padding-left: 10px;
	}

	.divTwo text {
		float: left;
		line-height: 50px;

	}

	.divTwo input {
		float: left;

	}
.divTwo{
	margin-top: 10px;
}
	.clear {
		clear: both;
	}

	.guanbi {
		border: 1px solid #000000;
		padding: 2px 5px;
		border-radius: 10px;
		float: right;
		margin-right: 15px;
		margin-top: 10px;
		color: red;
	}

	.divOne {
		width: 750rpx;
		height: 340px;
		background: rgba(236, 236, 236, 0.5);
		border-radius: 10px;
	}

	* {
		margin: 0;
		padding: 0;
	}

	.tianjia {
		width: 100px;
		height: 50px;
		line-height: 50px;
	}
</style>


网站公告

今日签到

点亮在社区的每一天
去签到