0

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では、何も起こりません。何か助けはありますか?

4

1 に答える 1

1

IE9でF12キーを押して、ブラウザモードを変更できることに気づいていませんでした。これを行った後、ブレークポイントを使用しましたが、JavaScriptに到達していませんが、JavaScriptsubstrメソッドがIE8とIE9で異なる結果を返していることに気付きました。そのため、OnClientItemSelectedは機能していて、メソッド呼び出しで失敗していました。ここでは、デバッグのためのIEでのF12の使用が大きく、「substr」の代わりに「substring」を使用していました。

于 2011-11-29T14:12:21.357 に答える