我最近完成了一个项目,我几乎和你自己一样(唯一的区别是用户专门使用 IE)。
我最终使用了 JQuery 的$.ajax()
函数,并从 XML 文件中提取数据。
此解决方案确实需要使用 Microsoft Access 或 Excel。我早在 2003 版本就使用过,但后来的版本工作得很好。
我的数据保存在 Access 的一个表中(在 Excel 上我使用了一个列表)。在 Access 中创建表后;老实说,它就像点击“导出”一样简单,保存为 XML,然后使用“ajax()”函数 ( http://api.jquery.com/jQuery.ajax/ ) 来操作您想要的数据输出,然后是用于页面布局的 CSS/HTML。
我建议使用 Access,因为让它以正确的方式导出 XML 并不那么麻烦,尽管 Excel 只需稍加修改就可以了。
下面是使用 ms-access 的步骤:
在访问中创建表并导出为 XML
生成的 XML 如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Calls.xsd" generated="2013-08-12T19:35:13">
<Calls>
<CallID>1</CallID>
<Advisor>Jenna</Advisor>
<AHT>125</AHT>
<Wrap>13</Wrap>
<Idle>6</Idle>
</Calls>
<Calls>
<CallID>3</CallID>
<Advisor>Edward</Advisor>
<AHT>90</AHT>
<Wrap>2</Wrap>
<Idle>4</Idle>
</Calls>
<Calls>
<CallID>2</CallID>
<Advisor>Matt</Advisor>
<AHT>246</AHT>
<Wrap>11</Wrap>
<Idle>5</Idle>
</Calls>
示例 HTML
<table id="doclib">
<tr><th>Name</th><th>AHT</th><th>Wrap</th><th>Idle</th></tr>
</table>
jQuery:
$(document).ready(function(){
$.ajax({
type: "GET",
url: "Calls.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('Calls').each(function(){
var advisor = $(this).find('Advisor').text(),
aht = $(this).find('AHT').text(),
wrap = $(this).find('Wrap').text(),
idle = $(this).find('Idle').text(),
td = "<td>",
tdc = "</td>";
$('#doclib').append("<tr>" +
td + advisor + tdc + td + aht + tdc + td + wrap + tdc + td + idle + tdc + "</tr>")
});
}
});
});