3

这让我很困惑。我有一个执行许多功能的 Web 应用程序,但它被炸毁的部分是在执行调用 Web 服务并从 DB2 返回结果的搜索功能时。

奇怪的是,错误并不总是发生,而且似乎只在通过 vip 访问我的 Web 应用程序时发生(它在负载平衡器上,在 2 个 IIS 服务器上循环)。使用其中一台服务器的直接 URL 访问 Web 应用程序时,不会出现该错误。

这让我相信,我的 web.config 有什么?

我还搜索了我的 javascript 代码,但我没有在任何地方使用 Length。

请帮忙,我一直在用头撞墙。

已更新代码(我在下面包含了必要的代码,省略了其余代码):

//Javascript***

函数验证搜索(){

if (Page_ClientValidate("TransSearch") == true) {              
                ShowWait();
                return true;
            }
            else {
                return false;
            }

}

函数 ShowWait() {

    target = document.getElementById('progress');
    document.body.appendChild(target);
    spinner.spin(target);
//This calls spinner.js from github

}

功能搜索完成(){

//clear previous search textboxes
document.getElementById('<%# txtEmail.ClientID %>').value = "";
    document.getElementById('<%# txtPhone.ClientID %>').value = "";

spinner.stop();

}

//标记***

    <div class="searchlabel">
    <label>Email Address</label><asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator runat="server" ID="EmailReq"  
                ControlToValidate="txtEmail"  ValidationGroup="TransSearch"
            Display="None"  
            ErrorMessage="<b>Required Field Missing</b><br />Email is required." />  
        <asp:ValidatorCalloutExtender runat="Server" ID="EmailReqE"  
            TargetControlID="EmailReq"  
            HighlightCssClass="validatorCalloutHighlight"  />
</div>
<div class="searchlabel">
        <label>Phone</label><asp:TextBox ID="txtPhone" runat="server" Font-Size="Medium"></asp:TextBox>
            <asp:RequiredFieldValidator runat="server" ID="PhnReq"  
                ControlToValidate="txtPhone"  ValidationGroup="TransSearch"
                Display="None"  
                ErrorMessage="<b>Required Field Missing</b><br />Phone is required." />  
            <asp:ValidatorCalloutExtender runat="Server" ID="PhnReqE"  
                TargetControlID="PhnReq"  
                HighlightCssClass="validatorCalloutHighlight" /> 
    </div> 
<asp:Button ID="btnSearch" runat="server" Text="Search" Width="90px" OnClientClick="return ValidateSearch();" OnClick="Search_Click" />

//代码隐藏***

公共无效搜索点击(对象发送者,EventArgs e){

//passes search text to webservice
//fills gridview with returned data
//lastly calls javascript function to stop spinner
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "searchComplete", "<script type='text/javascript'>searchComplete();</script>", false);

}

4

1 回答 1

0

也许你的 javascript 函数没有得到你提供的文本框。

document.getElementById('<%# txtEmail.ClientID %>').value

使用以下方法检查值:

alert(document.getElementById('<%# txtEmail.ClientID %>').value ) 

如果它是返回值。这可能是您 spinner.stop(); 的原因 不管用。

使用警报查看它是否正在进入您的功能。每次我陷入 javascript 时我都会使用它。它可以帮助我找到函数在哪一行之后给出错误。

于 2012-09-15T13:52:42.807 回答