我遇到了以JSON格式获取架构元素标题的问题,到目前为止我有:
<script type="text/javascript">
$(window).load(function() {
$("#thisForm2").validationEngine('attach', {
onValidationComplete: function(form, status) {
if (status === true) {
return true;
}
},
});
$("#thisForm2").validationEngine({showArrowOnRadioAndCheckbox: true});
});
$(function() {
$('form#thisForm2').jsonForm(
{
"schema": {
"adminName": {
"type": "string",
"title": "Admin Name"
},
"adminEmail": {
"type": "string",
"title": "Admin Primary E-mail"
},
"size": {
"type": "array",
"title": "Size",
"enum": ["1-100", "100-1K", "1K-10K", "10K+"],
},
},
"form": [
{
"key": "adminName",
"fieldHtmlClass": "form-control validate[minSize[2]]",
},
{
"key": "adminEmail",
"fieldHtmlClass": "form-control validate[minSize[2]]",
},
{
"key": "size",
"fieldHtmlClass": "form-control dropDownPrepend validate[minSize[2]]"
},
]
});
});
</script>
在后端,当我使用Map<String, String> allRequestParams
时,我能够获得JSON表单的键/值对,例如{adminName=Godzilla, adminEmail=abc@abc.com, size=1K-10K}
所以问题是:“如何在后端获得元素的标题?”标题我的意思是:
"title": "Admin Name"
尝试将模式部分中的标题复制为JSON的一部分,但似乎无法正常工作。也许我可以做一些JavaScript并解析它?我是JSON的新手,所以我可能不知道明显的事情,非常感谢任何建议。感谢。
答案 0 :(得分:0)
如果您想使用Jquery,可以尝试这样的事情,
var titles = [];
$.each(schema[0].adminName, function(index, item){
titles.push(item.title);
})