Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Edward_555
Html和javascript零散代码
提交
290e52e8
H
Html和javascript零散代码
项目概览
Edward_555
/
Html和javascript零散代码
通知
1
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
Html和javascript零散代码
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
290e52e8
编写于
10月 15, 2020
作者:
Edward_555
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
html table重复表单组转json数组
博客地址:
https://blog.csdn.net/qq_24915489/article/details/109093937
上级
ce9e435f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
116 addition
and
0 deletion
+116
-0
table_data_2json.html
table_data_2json.html
+116
-0
未找到文件。
table_data_2json.html
0 → 100644
浏览文件 @
290e52e8
<!DOCTYPE html>
<html>
<head>
<meta
charset=
"utf-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<title>
Table重复表单组元素转json数据
</title>
<!-- Tell the browser to be responsive to screen width -->
<meta
content=
"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
name=
"viewport"
>
<script
src=
"http://libs.baidu.com/jquery/2.0.0/jquery.min.js"
></script>
</head>
<body
>
<table
border=
"1"
id=
"mytable"
cellspacing=
"0"
>
<tbody
id=
"mytable_tbody"
>
<tr
class=
"table_main_value"
>
<td
colspan=
"2"
>
录入人:
</td>
<td
colspan=
"3"
>
<input
name=
"admin"
type=
"text"
>
</td>
</tr>
<tr
class=
"table_main_value"
>
<td
colspan=
"2"
>
录入时间:
</td>
<td
colspan=
"3"
>
<input
name=
"time"
type=
"text"
>
</td>
</tr>
<tr>
<th>
标题
</th>
<th>
简介
</th>
<th>
价格
</th>
<th>
类型
</th>
<th></th>
</tr>
<tr
class=
"table_group_value"
>
<td>
<input
name=
"title"
type=
"text"
>
</td>
<td>
<textarea
name=
"desc"
type=
"text"
></textarea>
</td>
<td>
<input
name=
"price"
type=
"text"
>
</td>
<td>
<select
name=
"style"
><option
value=
"novel"
>
小说
</option>
<option
value=
"fiction"
>
科幻
</option>
</select>
</td>
<td>
<button
type=
"button"
onclick=
"delTable(this)"
>
移除
</button>
</td>
</tr>
</tbody>
</table>
<button
type=
"button"
onclick=
"addTable()"
>
添加一行
</button>
<br><br><br>
<button
type=
"button"
onclick=
"DelAll()"
>
清空内容
</button>
<br><br><br>
<button
type=
"button"
onclick=
"getData()"
>
获取元素
</button>
<script>
function
getData
()
{
//重复表单元素
var
formdata
=
{};
var
arr_sub_form
=
[];
//重复子数据列表
//遍历含有主数据的tr ***核心重点***
//也可使用id,但每个tr的id必须以自增数字结尾 如 id=mytr0,mytr1,mytr2...,//$('tr[id^="mytr"]').each(function(){
$
(
'
tr[class^="table_group_value"]
'
).
each
(
function
(){
var
form_sub_data
=
{};
//获取所有input
$
(
this
).
find
(
"
input[type='text']
"
).
each
(
function
(){
form_sub_data
[
$
(
this
).
attr
(
"
name
"
)]
=
$
(
this
).
val
();
});
//获取所有select
$
(
this
).
find
(
"
select
"
).
each
(
function
(){
form_sub_data
[
$
(
this
).
attr
(
"
name
"
)]
=
$
(
this
).
val
();
});
//获取所有textarea
$
(
this
).
find
(
"
textarea[type='text']
"
).
each
(
function
(){
form_sub_data
[
$
(
this
).
attr
(
"
name
"
)]
=
$
(
this
).
val
();
});
arr_sub_form
.
push
(
form_sub_data
);
});
formdata
[
'
sub_data
'
]
=
arr_sub_form
;
//非重复表单元素
var
arr_main_form
=
[];
//非重复数据列表
var
form_main_data
=
{};
$
(
'
tr[class^="table_main_value"]
'
).
each
(
function
(){
//获取所有input
$
(
this
).
find
(
"
input[type='text']
"
).
each
(
function
(){
form_main_data
[
$
(
this
).
attr
(
"
name
"
)]
=
$
(
this
).
val
();
});
});
arr_main_form
.
push
(
form_main_data
);
formdata
[
'
main_data
'
]
=
arr_main_form
;
console
.
log
(
'
formdata
'
,
JSON
.
stringify
(
formdata
));
}
</script>
<script>
/*添加新一栏*/
function
addTable
(){
var
trHTML
=
""
;
trHTML
+=
'
<tr class="table_group_value">
'
+
'
<td> <input name="title" type="text" > </td>
'
+
'
<td> <textarea name="desc" type="text" ></textarea> </td>
'
+
'
<td> <input name="price" type="text" > </td>
'
+
'
<td> <select name="style"><option value="novel">小说</option> <option value="fiction">科幻</option> </select> </td>
'
+
'
<td> <button type="button" onclick="delTable(this)">移除</button> </td>
'
+
'
</tr>
'
;
$
(
"
#mytable_tbody
"
).
append
(
trHTML
);
//在表之后添加空白行
}
/*删除一栏*/
function
delTable
(
obj
){
$
(
obj
).
parent
().
parent
().
remove
();
}
/*清空所有内容*/
function
DelAll
(
obj
){
$
(
'
tr[class^="table_main_value"]
'
).
each
(
function
(){
//获取所有input
$
(
this
).
find
(
"
input[type='text']
"
).
each
(
function
(){
$
(
this
).
val
(
""
);
});
});
$
(
'
tr[class^="table_group_value"]
'
).
each
(
function
(){
$
(
this
).
remove
();
})
}
</script>
</body>
</html>
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录