IE Beispiel 2: Tabelle sortieren

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Einrichten des Servers > HTML-Seite für das Authentic Plug-in > Internet Explorer >

IE Beispiel 2: Tabelle sortieren

Dies ist eine HTML-Beispieldatei mit einem eingebetteten JavaScript. Für das Beispiel muss das Authentic Browser Plug-In (CAB-Datei und Lizenzdatei) auf Ihrem Computer installiert werden. Beachten Sie, dass die Groß- und Kleinschreibung auf einigen Servern eine Rolle spielt. Wenn eine Datei daher nicht gefunden wird, überprüfen Sie die Groß- und Kleinschreibung von Dateinamen und Befehlen im Code.

 

Der Code zeigt an:

wie das Browser Plug-In aufgerufen werden soll. Passen Sie den Code bitte an und geben Sie den Pfad zu Ihrer CAB-Datei und dem Class Identifier Ihrer Browser Plug-In-Version an (trusted oder untrusted).
wie eine Datei in das Browser Plug-In geladen werden soll. Passen Sie bitte den Code an und geben Sie den Pfad zu Ihrem Beispieldokument an.
wie Schaltflächen für einfache Cursor-Positionierungen implementiert werden.
wie komplexere Befehle wie z.B. die Sortierung von Tabellen implementiert werden.
wie das SelectionChanged-Ereignis verwendet wird.

 

Nähere Informationen dazu finden Sie auch unter dem OBJECT-Element.

 

<html>

 <head>

         <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

         <title>test page For Authentic Browser Plug-in</title>

 

         <SCRIPT LANGUAGE="javascript" For="objPlugIn" EVENT="ControlInitialized">

                 var strSampleRoot = "http://myRoot/myPath/myDocBaseName";

                 objPlugIn.SchemaLoadObject.URL = strSampleRoot + ".xsd";

                 objPlugIn.XMLDataLoadObject.URL = strSampleRoot + ".xml";

                 objPlugIn.DesignDataLoadObject.URL = strSampleRoot + ".sps";

                 objPlugIn.StartEditing();

         </SCRIPT>

 

         <SCRIPT ID="clientEventHandlers" LANGUAGE="javascript">

                 var objCurrentRange = Null;

 

                 Function BtnDocumentBegin() { objPlugIn.AuthenticView.DocumentBegin.Select(); }

                 Function BtnDocumentEnd() { objPlugIn.AuthenticView.DocumentEnd.Select(); }

                 Function BtnWholeDocument() { objPlugIn.AuthenticView.WholeDocument.Select(); }

                 Function BtnSelectNextWord() { objPlugIn.AuthenticView.Selection.SelectNext(1).Select(); }

                 Function BtnSortDepartmentOnClick()

                 {

                         var objCursor = Null;

                         var objTableStart = Null;

                         var objBubble = Null;

                         var strField1 = "";

                         var strField1 = "";

                         var nColIndex = 0;

                         var nRows = 0;

                         

                         objCursor = objPlugIn.AuthenticView.Selection;

                         If (objCursor.IsInDynamicTable())

                         

                                 // calculate current column index

                                 nColIndex = 0;

                                 While (True)

                                 {

                                         try { objCursor.GotoPrevious(11); }

                                 catch (err) { break; }

                                 nColIndex++;

                         }

 

                         // GoTo begin of table

                         objTableStart = objCursor.ExpandTo(9).CollapsToBegin().Clone();

 

                         // count number of table rows

                         nRows = 1;

                         While (True)

                         {

                                 try { objTableStart.GotoNext(10); }

                         catch (err) { break; }

                         nRows++;

                         }

 

                         // bubble sort through table

                         For (var i = 0; i < nRows - 1; i++) {

                                 for(var j 0; j < nRows-i-1; j++) {

                                         objBubble objCursor.ExpandTo(9).CollapsToBegin().Clone();

                                         // Select correct column in jth table row

                                         objBubble.GotoNext(6).Goto(10,j,2).Goto(11,nColIndex,2).ExpandTo(6);

                                         strField1 = objBubble.Text;

                                         strField2 = objBubble.GotoNext(10).Goto(11,nColIndex,2).ExpandTo(6).Text;

                                         if(strField1 > strField2) {

                                                 if(!objBubble.MoveRowUp()) {

                                                         alert('Table row move is not allowed!');

                                                         return;

                                                 }

                                         }

                                 }

                         }

                 }

         </SCRIPT>

 </head>

 

 <body>

         <Object id="objPlugIn" 

         <!-- CodeBase selects 32-bit CAB file (AuthenticBrowserEdition.CAB) -->

         <!-- or 64-bit Cab file (AuthenticBrowserEdition_x64.CAB) -->

                 codeBase="http://myCabfileLocation/AuthenticBrowserEdition.CAB#Version=12,3,0,0" 

         <!-- Class Id for 32-bit and 64-bit CAB files is the same -->

                 classid="clsid:B4628728-E3F0-44a2-BEC8-F838555AE780" 

                 width="100%"

                 height="80%"

                 VIEWASTEXT>

                 <PARAM NAME="EntryHelpersEnabled" VALUE="TRUE">

                 <PARAM NAME="SaveButtonAutoEnable" VALUE="TRUE">

         </Object>

         <TABLE>

                 <TR>

                         <TD><Input Type="button" value="Goto Begin" id="B1" onclick="BtnDocumentBegin()"></TD>

                         <TD><Input Type="button" value="Goto End" name="B2" onclick="BtnDocumentEnd()"></TD>

                         <TD><Input Type="button" value="Whole Document" name="B3" onclick="BtnWholeDocument()"></TD>

                         <TD><Input Type="button" value="Select Next Word" name="B4" onclick="BtnSelectNextWord()"></TD>

                 </TR>

                 <TR>

                         <TD><Input Type="button" value="Sort Table by this Column" id="B6" onclick="BtnSortDepartmentOnClick()"</TD>

                 </TR>

         </TABLE>

         <TABLE id=SelTable border=1>

                 <TR><TD id=SelTable_FirstTextPosition></TD><TD id=SelTable_LastTextPosition></TD></TR>

                 <TR><TD id=SelTable_FirstXMLData></TD><TD id=SelTable_FirstXMLDataOffset></TD></TR>

                 <TR><TD id=SelTable_LastXMLData></TD><TD id=SelTable_LastXMLDataOffset></TD></TR>

                 <TR><TD id=SelTable_Text></TD></TR>

         </TABLE>

 </body>

 

 <SCRIPT LANGUAGE=javascript For=objPlugIn EVENT=selectionchanged>

         var CurrentSelection =  Null;

         CurrentSelection = objPlugIn.AuthenticView.Selection;

         SelTable_FirstTextPosition.innerHTML = CurrentSelection.FirstTextPosition;

         SelTable_LastTextPosition.innerHTML = CurrentSelection.LastTextPosition;

         SelTable_FirstXMLData.innerHTML = CurrentSelection.FirstXMLData.Parent.Name;

         SelTable_FirstXMLDataOffset.innerHTML = CurrentSelection.FirstXMLDataOffset;

         SelTable_LastXMLData.innerHTML = CurrentSelection.LastXMLData.Parent.Name;

         SelTable_LastXMLDataOffset.innerHTML = CurrentSelection.LastXMLDataOffset;

 </SCRIPT>

 

</html>

 


© 2019 Altova GmbH