2009-08-25 6 views
0

Ich habe und ASP.NET 3.5 Seite, wo ich etwas JavaScript-Code debuggen muss.Dupliziertes JavaScript ohne Debugger-Anweisung?

function checkAll(isChecked) 
    { 
     debugger; 
     var dataGridElements = document.getElementById('" + DataGridSearchResults.ClientID + @"').getElementsByTagName('input'); 
     for (var i = 0; i < dataGridElements.length; i++) 
     { 
     var e = dataGridElements[i]; 
     if ((e.type=='checkbox') && (!e.disabled)) 
     { 
      e.checked = isChecked; 
     } 
     } 
    } 

Wie Sie sehen können, habe ich eine Debugger-Anweisung in der ersten Zeile hinzugefügt. Aus irgendeinem Grund, wenn ich die Seite ausführen, ist das Javascript (das in einer String-Variablen und registriert mit Page.ClientScript.RegisterClientScript-Anweisung ist) in meinem Quellcode zweimal! Der zweite Block hat auch meine Debugger-Anweisung nicht! Ich habe das Projekt überprüft, dieser Javascript-Block wird nur einmal im Projekt aufgelistet.

Irgendwelche Ideen? (Der Client, auf dem ich laufe, ist IE8, wenn das einen Unterschied macht)

Antwort

1

Ich habe es herausgefunden. Die Basisseite, auf der sich dieses Steuerelement befand (das JavaScript befand sich in einer ASCX-Datei), war eine Seite mit einem Tab-Strip. Auf einer der anderen Registerkarten wurde der Code kopiert und mit genau der gleichen Signatur eingefügt, nur ein Grid-Name-Unterschied. Sobald ich die Signatur in meinem Code geändert habe, hat es funktioniert.