javascript - 如何将关联的标签插入到我的 json 列表中
问题描述
编辑:我想出了如何有效地拉绳子。我的新工作是将 Selectbox 元素名称替换为提交按钮生成的 json 对象中的标签。
理想情况下,此 Json 对象应遵循以下格式:{[label]:[value], "Test 1:":"pass"}
我在这方面还很陌生,整天都在代码学院里奔波,但我还没有达到他们的指导对我有用的地步。谢谢,所有的帮助家伙!
js
<script type="text/javascript">
// Export to .json on click
$(document).ready(function() {
$("#btn-submit").click(function(e){
var jsonData = {};
//Answer to first question
var label = document.querySelector("label[for='usb1']").textContent;
var formData = $("#myform").serializeArray();
// console.log(formData);
$.each(formData, function() {
if (jsonData[this.name]) {
if (!jsonData[this.name].push) {
jsonData[this.name] = [jsonData[this.name]];
}
jsonData[this.name].push(this.value || '');
} else {
jsonData[this.name] = this.value || '';
}
});
console.log(jsonData);
e.preventDefault();
function download(content, fileName, contentType) {
var a = document.createElement("a");
var file = new Blob([content], {type: contentType});
a.href = URL.createObjectURL(file);
a.download = fileName;
a.click();
}
if (confirm("Save results to <SCRIPT_PATH_LOCATION>")){
download(JSON.stringify(jsonData), 'text.json', 'text/plain');
} else {
return false
}
});
});
</script>
html
<form id="myform" type="post">
<fieldset>
<div class="elements">
<label for="usb1">Test 1:</label>
<select name="usb1" id="usb1">
<option value=""></option>
<option value="pass">PASS</option>
<option value="fail">FAIL</option>
</select>
</fieldset>
</form>
解决方案
推荐阅读
- java - 为什么我不能使用 'tostring' 打印?我如何打印包含类的 arry?
- html - 如何将自定义元素与模板一起使用?
- python - 用辅助轴绘制 2 条线,但不显示第一列数据
- r - 对从命令行 (optparse) R 传递参数感到困惑,即使使用显式“默认”选项也不会存储参数
- php - 注意:第 6 行中的数组到字符串的转换!关于 SQL 的问题
- r-markdown - RMarkdown 到 PPT:未加载 reference_doc()
- c - 无法制作:函数“http_write_chunked”的隐式声明
- nestjs - Nestjs 服务器不为 socket.io 客户端提供服务
- mysql - mysql select查询不适用于通过用户变量设置的限制和偏移量
- mysql - mariadb vs mysql * 两者如何处理 SELECT * FROM Customers WHERE City LIKE '[acs]%';