javascript - 以 JSON 格式查看表格行详细信息中的内容
问题描述
我创建了一个表,在该表中单击一个按钮会打开和关闭行本身的详细信息。在详细信息中,您可以看到我无法格式化的 JSOn,但最重要的是我无法将其放入表格的大小中。
有什么办法吗?
我是这样做的:
HTML
<section>
<table style="font-family: arial, sans-serif; border-collapse: collapse; width: 100%; table-layout: fixed; "
>
@* Intestazione *@
<thead>
<tr>
<th>
ID TRANSAZIONE
</th>
<th>
DATA
</th>
<th>
DESCRIZIONE
</th>
<th>
SORGENTE
</th>
<th>
DETTAGLI
</th>
</tr>
</thead>
@* Valori Table *@
<tbody>
@if (Model.Tracelog != null)
{
@foreach (var item in Model.Tracelog)
{
<tr class="expandable @((item.TransactionSequence == "1") ? "request" : "response")">
<td>
@Html.DisplayFor(modelItem => item.TransactionId)
</td>
<td>
@Html.DisplayFor(modelItem => item.TraceDate)
</td>
<td>
@Html.DisplayFor(modelItem => item.TraceDescription)
</td>
<td>
@Html.DisplayFor(modelItem => item.SourceName)
</td>
<td>
<input class="btn btn-info" type="button" value="Apri Dettagli">
</td>
</tr>
<tr>
<td colspan="5">
@(@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(item.TraceBlob)));
</td>
</tr>
}
}
</tbody>
</table>
CSS
<style>
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
</style>
<style type="text/css">
.request {
background-color: LightGreen;
}
.response {
background-color: LightCoral;
}
</style>
JS
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="/js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('.expandable').nextAll('tr').each(function () {
if (!($(this).is('.expandable')))
$(this).hide();
});
$('.expandable input[type=button]').click(function () {
var trElem = $(this).closest("tr");
trElem.nextAll('tr').each(function () {
if ($(this).is('.expandable')) {
return false;
}
$(this).toggle();
});
});
$('#expand_all').click(function () {
$('.expandable').nextAll('tr').each(function () {
if (!($(this).is('.expandable')))
$(this).show();
});
});
$('#collaps_all').click(function () {
$('.expandable').nextAll('tr').each(function () {
if (!($(this).is('.expandable')))
$(this).hide();
});
})
});
</script>
提前致谢。
编辑:我想以 JSON 格式显示它,即:
{
"MessageBody": {
"IdGateway": "002",
"MsgId": "a8beaabe-80da-4721-bc67-7983ee87d516",
"Timestamp": "1579516070021",
"Version": "1.0",
"Period": "300000",
"SensorsStatus": [
{
"SensorId": "status",
"SensorValue": "0"
}
]
},
"Topic": "CERT / 01234 / GICS / STATUS / 002"
}
解决方案
之后使用标签。它显示原始文本
table, th, td {
border: 1px solid black;
}
<table>
<tr>
<th>Month</th>
<th>Savings</th>
</tr>
<tr>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>February</td>
<td><pre>{
"MessageBody": {
"IdGateway": "002",
"MsgId": "a8beaabe-80da-4721-bc67-7983ee87d516",
"Timestamp": "1579516070021",
"Version": "1.0",
"Period": "300000",
"SensorsStatus": [
{
"SensorId": "status",
"SensorValue": "0"
}
]
},
"Topic": "CERT / 01234 / GICS / STATUS / 002"
}</pre></td>
</tr>
</table>
UPD:表内
推荐阅读
- google-sheets - Google表格中的COUNTIF不包括具有给定标题的列
- javascript - JavaScript 更改元素类型
- jquery - Angular CLI 7.1.4 中未加载外部 JS 文件
- php - Memcached PHP 会话错误:session_start():读取会话数据失败
- stata - 生成新变量时忽略缺失值
- c# - “System.DateTime”不包含“Value”的定义,也没有接受第一个参数的扩展方法“Value”
- php - Mysqli stmt 绑定并执行失败
- python - 重塑 np 数组以进行深度学习
- python - 在 Pygame 1.9.4 中使用 move_ip
- javascript - 垃圾邮件注入链接的位置