AutoCompleteExtender OnClientItemSelected在IE8中不起作用(在IE9中工作)[javascript substring]

时间:2011-11-28 15:19:21

标签: javascript asp.net internet-explorer-8 substring autocompleteextender

我有一个调用Web服务的AutoCompleteExtender。 AutoCompleteExtender工作正常,Target TextBox(tb_provider1)具有GetProviders函数的自动完成功能。我想在选择TextBox(tb_provider1)的自动完成文本时调用javascript函数。我使用了OnClientItemSelected,并且在IE9中正确完成了调用。这是ASPX代码:

<asp:AutoCompleteExtender ID="AutoComplete1" 
runat="server" ServiceMethod="GetProviders" 
ServicePath="AutoCompleteWebService.asmx" OnClientItemSelected="ProviderSelectedFunc"
TargetControlID="tb_provider1" CompletionSetCount="20" 
CompletionInterval="250" CompletionListCssClass="CompletionListCssClass" 
CompletionListItemCssClass="CompletionListItemCssClass" 
CompletionListHighlightedItemCssClass="CompletionListHighlightedItemCssClass">

这是javascript

function ProviderSelectedFunc(sender, args) {
        //here I know I am sending in tb_enrollingProvider1
        var temp = sender._id.toString();
        if (temp.substr(-14,13))
            alert("Testing");
    }

在IE9中,警报会触发。在IE7 / IE8中没有任何反应。有帮助吗?

1 个答案:

答案 0 :(得分:1)

我不知道您可以在IE9中按F12并更改浏览器模式。在这之后,我使用断点并意识到它不是没有进入javascript但是javascript substr方法在IE8和IE9中返回不同的结果。所以OnClientItemSelected正在工作,它在我的方法调用中失败了。在IE中使用F12来调试很大,就像使用“substring”(而不是“substr”)一样。