0

我正在使用 iTextSharp 将网格数据导出到 PDF 文件。我正在搜索 billno,获取的数据与网格和控件相关(在 ext.net 中)。可以通过 3 种方式进行搜索: 1. 通过插入 billno 并在组合框中按 Enter 2. 通过插入 billno 并单击组合中的触发器 3. 通过从组合中选择 billno 现在我单击 ToPDF 按钮导出数据。如果我执行 2 & 3,它工作正常,但是当我执行 1 时,会出现一个窗口,标题为Request failure, Status text-communication failure。由于网格数据也被导出,但是这个窗口似乎我没有得到。

我的代码如下 .cs

protected void ToPDF(object sender, EventArgs e)
{
      //Code
}

.aspx

 <ext:ComponentMenuItem ID="ComponentMenuItem1" runat="server">
                                                        <Component>
                                                               <ext:ComboBox ID="cmbSearchBillno" runat="server" 
                                                                    EmptyText="Select Bill No" 
                                                                    ForceSelection="true"   
                                                                    StoreID="BillMasterStore"  
                                                                    DisplayField="Billno" ValueField="BillId">
                                                                    <Triggers>
                                                                        <ext:FieldTrigger Icon="Search" />
                                                                    </Triggers>
                                                                     <Listeners>
                                                                        <SpecialKey Fn="enterKeyPressHandler" />
                                                                    </Listeners>
                                                                    <DirectEvents>
                                                                         <%--<SpecialKey OnEvent="enterKeyPressHandler" ShowWarningOnFailure="false" Timeout="60000" StopEvent="true">
                                                                            <ExtraParams>
                                                                                <ext:Parameter Name="key" Value="e.getKey()" Mode="Raw">
                                                                                </ext:Parameter>
                                                                                <ext:Parameter Name="BillNo" Value="this.getText()"  Mode="Raw"></ext:Parameter>
                                                                            </ExtraParams>
                                                                        </SpecialKey>--%>
                                                                        <Select OnEvent="ChangeBillno">
                                                                            <ExtraParams>
                                                                                <ext:Parameter Name="BillNo" Value="record.id" Mode="Raw"></ext:Parameter>
                                                                            </ExtraParams>
                                                                        </Select>
                                                                        <TriggerClick OnEvent="SearchBillDetails" >
                                                                            <ExtraParams>
                                                                                <ext:Parameter Name="BillNo" Value="this.getText()" Mode="Raw"></ext:Parameter>
                                                                            </ExtraParams>
                                                                        </TriggerClick>
                                                                    </DirectEvents> 

                                                                </ext:ComboBox>
                                                        </Component>                        
                                                    </ext:ComponentMenuItem>

转PDF按钮

  <ext:Button ID="btnPdf" runat="server" Text="To PDF" AutoPostBack="true" OnClick="ToPDF"  Icon="PageWhiteAcrobat">
                                        <Listeners>
                                            <Click Fn="saveData" />
                                        </Listeners>
                                     </ext:Button>

脚本

<script type="text/javascript">

       var enterKeyPressHandler = function (f, e) {
           if (e.getKey() == e.ENTER) 
           {
                var billno=this.getText();
                Ext.net.DirectMethods.SearchBillno(billno);

                e.stopEvent();
                this.send();
           }
       }


         var saveData = function () {
           GridData.setValue(Ext.encode(GridService.getRowsValues({selectedOnly : false,excludeId:true})));
        };


    </script>
4

1 回答 1

0

是的,当您使用回车键搜索时它会抛出错误,这是因为您在侦听器中使用直接方法来填充网格。通过查看您的代码,我可以看到您使用了您之前评论过的直接事件特殊键..使用该直接事件特殊键,它将起作用

于 2012-05-09T06:23:55.037 回答