任何人都可以解释为什么我在使用Google Visualization API显示图表时会收到
HTML1504:意外的结束标记警告?
我一直在调试一个网站,其中图表在Firefox中显示正常,但在IE11中没有显示任何数据.我最终解决了这个问题(IE11处理不同的日期格式与Firefox不同),但是浪费了大量时间来追踪上述错误.
我的代码基于https://developers.google.com/chart/interactive/docs/quick_start的示例代码,它给出了相同的消息.在JSLint或W3C HTML Validator中都没有出现任何不良内容.
如果我注释掉google.load(‘visual’,’1.0′,{‘packages’:[‘corechart’]}),警告就会消失;但这显然会阻止图表的运作.更改IE11兼容性设置似乎没有任何效果.
该错误在IE11开发者控制台中可见,但在Firefox中的控制台,浏览器控制台或Firebug控制台中没有出现任何等效项. IE11报告错误是由< / script>触发的.我的图表代码末尾的标记(这是内联javascript,而不是单独的文件).删除< / script>标记导致HTML错误(正如预期!)
解决方法
我在MS Edge Win 10上遇到了同样的问题.新的加载器没有警告:
<!DOCTYPE html><html><head> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current',{'packages':['corechart']}); </script> </head> <body></body> </html>
除非绝对必要,否则不再更新使用jsapi加载的Google图表.