代码:
function updateValues(res){
var rows=res.ROWCOUNT;
for (i=0;i<rows;i++){
var x='document.Eventform.txt_'+res.DATA.EVENT_LENDER_ID[i];
x.value=res.DATA.EVENT_DAYS[i];
}
}
res
是传递给函数的JSON对象,我们需要动态构建表单字段名称并为这些字段赋值(动态构建的表单字段名称将存在于表单中)。
答案 0 :(得分:1)
如果你想从javascript动态创建一个表单,你可以这样做......
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>JS Example</title>
</head>
<body>
<div id="formContainerDiv">
</div>
<script type="text/javascript">
var form = document.createElement('form');
for (var i = 0; i < 10; i++) {
var element = document.createElement('input');
element.type = 'text';
element.value = i.toString();
form.appendChild(element);
}
var submit = document.createElement('input');
submit.type = 'submit';
submit.value = 'submit';
form.appendChild(submit);
document.getElementById('formContainerDiv').appendChild(form);
</script>
</body>
</html>
答案 1 :(得分:0)
以下代码应该做你想做的事情
function updateValues(res) {
var rows = res.ROWCOUNT;
var form = document.forms['EventForm'];
for (var i=0; i<rows; i++) {
form.elements['txt_' + res.DATA.EVENT_LENDER_ID[i]].value = res.DATA.EVENT_DAYS[i];
}
}
但是,如果您可以将JSON对象的布局更改为其他内容,则可以使该代码更清晰一些:
function updateValues(res) {
var form = document.forms['EventForm'];
for (var name in res) {
form.elements['txt_' + name].value = res[name];
}
}
如果表单字段的id属性设置为JSON对象中包含的名称,那就更好了。在这种情况下,以下内容将起作用(与更改JSON对象一起使用):
function updateValues(res) {
for (name in res) {
document.getElementById(name).value = res[name];
}
}