我正在使用带有集成Weberver的Siemens S7-1200 PLC。我想使用JavaScript从网页中的PLC显示多个模拟值。使用一个标签,它效果很好,但是如何使用JSON结构添加和显示多个标签?
我做了以下操作: - 使用建议的代码更新JavaScript - 更新了脚本从
读取的HTM文件,但我不知道我是否做得正确,然后我如何打电话 对于不同的变量。
这是我要在以下部件中分配数据的表 脚本: 文件:iowebserver.htm 非常感谢。 <table>
<tr>
<td class="static_field">Nivå [m]:</td>
<td class="output_field"><label id="HMI_skalert">0</label></td>
</tr>
<tr>
<td class="static_field">Masse [tonn]:</td>
<td class="output_field"><label id="Tank1_masse">0</label></td>
</tr>
</table>
<script type="text/Javascript">
$(document).ready(function(){
$.ajaxSetup({ cache: false });
setInterval(function() {
$.getJSON("IOwebserver.htm", function(result){
HMI_skalert= result.HMI_skalert
Tank1_masse=result.Tank1_masse
});
},1000);
});
</script>
{
":="webdata".HMI_skalert:",
":="webdata".Tank1_masse:"
}
我认为您应该在这篇文章中查看... https://api.jquery.com/jquery.getjson/
您在ioweberver.htm文件中没有JSON中的返回键。
" :=" webdata" .hmi_skalert:" ->在这种情况下使用 awp command 的JSON对象的值。:=" name_of_datablock" .variable: ->符号(:=)和(:)是SIMATIC WEBSERVER中使用的AWP命令的边界
因此,尝试像这样重新重新制作此文件:
{
"HMI_skalert":":='webdata'.HMI_skalert:",
"Tank1_masse":":='webdata'.Tank1_masse:"
}
如果这不起作用,请尝试将postrophes dobule quotes(")用一个(')。
例如,我使用一个间隔加载XML文件来为SIMATIC S7-S1200 WebServer加载57个变量。有关更多信息,请与我联系..