日期:2014-05-17  浏览次数:20463 次

如何给网页中的元素赋值JSON?
有一段网页代码: <table class="tablecontent">
<tr class="td-black-grad">
<th class="width30">编号</th>
<th class="width60">时间</th>
<th class="width180">种类</th>
<th class="width320">详情</th>
<th class="width70">金额</th>
<th class="width70">预计利润</th>
</tr>
<?if(it.normalList){?>
<?
for (var normalListIndex=0; normalListIndex < it.normalList.length; normalListIndex ++) {
var det = it.normalList[normalListIndex];
colorIndex++;
?>
<tr class="<? if ((colorIndex) % 2) { ?>bg-white<? } else { ?>bg-llgrey<? } ?>">
<td class="width30"><span class="black"><?=det.seqNo?></span></td>
<td class="width60">
<span class="black"><?=det.displaydetDate?></span>
<span class="black"><?=det.displaydetTime?></span>
<span class="blue">编号: <?=det.detId?></span>
</td>
<td class="width180"><span class="black"><?=det.marketType?></span><span class="black">&nbsp;</span></td>
<td class="width370 align-right">
<div class="font-wrap"><?=det.htmlWrappedDetails?></div>
</td>  
<td class="width70 align-right">
<span class="font-black">
<?if (det.detStatus == 'Cancelled'){?>
<span class="cancelled-det-num-data"><?=det.stakeStr?></span>
<?}else{?>
<?=det.stakeStr?>
<?}?>
</span>
</td>
<td class="width70 align-right">
<span class="font-black">
<?if (det.detStatus == 'Cancelled'){?>
<span class="cancelled-det-num-data"><?=det.estimatePayoutStr?></span>
<?}else{?>
<?=det.estimatePayoutStr?>
<?}?>
</span>
</td>
</tr>
<?}?>  
<tr>
<td colspan="4" class="width640 bg-lgrey"></td>
<td class="width70 bg-lyellow">
<span class="red-bold align-right">
<?=it.totalStake?>
</span>
</td>
<td class="width70 bg-lyellow">
<span class="red-bold align-right">
<?=it.totalEstimatePayout?>
</span>
</td>
</tr>  
<?}?>
</table>

用这个表来读取一个JSON格式的字符串数据,在webbrowser里显示出来,其中的it.normalList,指的是一个JSON格式的东西“{"normalList":[{"。。。。。。”,如何把这个字符串,赋值给it呢,是不是直接给他一这个JSON格式的字符串,来完整显示内容呢

------解决方案--------------------
继然it.normalList是一个json对象,写个脚本根据那个json来创建那个table啊,或单独创建个函数通过json对象来给table需要的地方赋值。不要到table中去取it.normalList的值
到处都是<?来?>去,感觉你上面那个搞得有点复杂。
------解决方案--------------------
用jquery会比较简单
------解决方案--------------------
jquery里只需要用ParseJSON方法就可以了。
给元素(如文本框)赋值,只需要先取到该元素,再设置其属性就可以了。
var id = document.getElementById("id");
id.Value = "test";
或者
id.SetAttribute("Value","test");
如果在JQuery下
$("#id").val("test");就可以