通过缓存的HTML将XML配置文件传递给JavaScript


Pass XML configuration file to JavaScript via cached HTML

我需要将数据从XML配置文件传递到JavaScript。应用程序需要完全脱机工作(我将使用应用程序缓存和本地存储),我计划使用PHP生成页面。是否有一种简单的方法可以将XML放在输出文档中,使其不会干扰标准HTML解析,但仍然可以使用JavaScript轻松访问。

如果按照注释的建议,您可以使用json代替,那么您可以将其设置为html标签数据属性:

<?php $settings = array('name'=>'john');?>
<div id="mydiv" data-settings="<?php echo json_encode($settings); ?>"> <!-- --> </div>

然后在javascript中检索:

var mydiv=document.getElementById('mydiv');
var settings=JSON.parse(mydiv.dataset.settings);
alert(settings.name); //alerts john

或者直接回显到脚本标签中:

<script type="javascript">
    var settings=<?php echo json_encode($settings); ?>;
</script>