首页 > 解决方案 > 是否可以向仅从源加载所选数据的 hta 应用程序添加下拉列表?

问题描述

我有一个使用文本文件作为数据源的 HTA 应用程序。文本文件包含每天更新的供应商和发票列表。问题是 HTA 一打开就会加载所有数据,并且需要一些时间才能完成。有没有办法只从下拉列表中加载符合条件的数据,例如选择供应商 ID 或发票金额或两者兼而有之?这是我的应用程序的代码。

 <title>Accounts Payable Invoices</title>
    <head>
    <HTA:Application
         APPLICATIONNAME="AP INVOICES"
         Scroll="yes"
    >


    </head>

    <HTML>
    <BODY>

    <OBJECT id="serviceList" CLASSID="clsid:333C7BC4-460F-11D0-BC04-0080C7055A83">
     <PARAM NAME="DataURL" VALUE="C:\Users\Public\AP_Invoice.prn">
     <PARAM NAME="UseHeader" VALUE="TRUE">
     <PARAM NAME="TextQualifier" VALUE="&quot;">
     <PARAM NAME="SortColumn" VALUE="Vendor;GL Date">

    </OBJECT>
    <H2>Accounts Payable Invoices</H2>
    <table border='1' width='100%' cellspacing='0' datasrc=#serviceList>
    <THEAD><TR>
    <TD><b>Vendor</TD>
    <TD><b>Invoice</TD>
    <TD><b>GL Date</TD>
    <TD><b>Invoice Amount</TD>
    <TBODY>
    <TR>
    <TD><DIV datafld="Vendor"></DIV></TD>
    <TD><DIV datafld="Invoice"></DIV></TD>
    <TD><DIV datafld="GL Date"></DIV></TD>
    <TD><DIV datafld="Invoice Amount"></DIV></TD>
    </TR>
    </THEAD>
    </TR>
    </TBODY>
    </TABLE>
    </BODY>
    </HTML>

标签: htmlhta

解决方案


您正在使用的表格数据控件具有DATAPAGESIZE属性,该属性限制呈现的页面数。当有很多记录时,在 HTML 中呈现表格会很慢,因为它们都必须在表格被呈现之前被加载。

试试看你的桌子是否表现更好。

   <table border='1' width='100%' cellspacing='0' datasrc=#serviceList DATAPAGESIZE=2>

此外,您对关闭 THEAD 标记的嵌套不正确。将这两个标签移到标签上方<TBODY>

</THEAD>
</TR>

推荐阅读