Exportieren HTML-Tabelle in excel mit javascript

Habe ich die Tabelle mit 4 Spalten, wobei jede Spalte enthält text-Feld und button und am Ende jeder Zeile aus der Bearbeiten und löschen button.
Ich möchte um die Tabelle zu exportieren in excel-format, aber wenn ich das Textfeld und die Schaltfläche in der Spalte-header und Bearbeiten-und löschen-Taste sind auch immer exportiert und in excel-Datei, die ich nicht will.
Kann einer mir sagen, wo ich die Fehler in javascript, bitte.

Hier mein jquery code, ich habe es aus dem net (http://jsfiddle.net/insin/cmewv/)

<script type="text/javascript">
var tableToExcel = (function() {
  var uri = 'data:application/vnd.ms-excel;base64,'
    , template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>'
    , base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) }
    , format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p]; }) }
  return function(table, name) {
    if (!table.nodeType) table = document.getElementById(table)
    var ctx = {worksheet: name || 'Worksheet', table: table.innerHTML}
    window.location.href = uri + base64(format(template, ctx))
  }
})()
</script> 

mein HTML code wie folgt

<TABLE  id="table_id" class="display" align="Center" border="1px" width="80%">
        <thead>
        <tr>
        <th> <b>User_ID </th></b>
        <form action="SearchId" method="post">
        <input type="hidden" name="hiddenname" value="hidden_uid" >
        <input type="text" name="uid" id="uid">
        <input type="submit" value="Search">
        </form>

        <th><b>User_Name </th></b>
        <form action="SearchId" method="post">
        <input type="text" name="uname" id="uname">
        <input type="hidden" name="hiddenname" value="hidden_uname" >
        <input type="submit"  value="Search">
        </form>

        <th><b>Password</th></b>
        <form action="SearchId" method="post">
        <input type="text" name="pass" id="pass">
        <input type="hidden" name="hiddenname" value="hidden_pass" >
        <input type="submit" value="Search">
        </form>

        <th><b>Designation</th></b>
        <form action="SearchId" method="post">
        <input type="text" name="desig" id="desig">
        <input type="hidden" name="hiddenname" value="hidden_desig" >
        <input type="submit" value="Search">
        </form>
        </thead>

        <tbody >
        <%Iterator itr;%>
        <%List data=(List) request.getAttribute("UserData");
        for(itr=data.iterator();itr.hasNext();)
        {%>
            <tr>
                <% String s= (String) itr.next(); %> 
                <td><%=s %></td>
                <td><%=itr.next() %></td>
                <td><%=itr.next() %></td>
                <td><%=itr.next() %></td>

                <form id="edit" action="EditRecord" method="post" >
                <td><input type="hidden" name="hidden_edit" id="edit_id" value="<%=s %>"/> 
                <input type="submit" id="myButton" value="Edit" name="edit" onclick="toggleVisibility('');"> </td>
                </form>

                <td><form id="delete" action="DeleteRecord" method="post" >
                <td><input type="hidden" name="hidden_delete" id="delete_id" value="<%=s %>"/>
                <input type="submit" value="delete" name="delete"> </td>
                </form></td>    
        <%} %>
            </tr>   

            </tbody>
    </TABLE>
  • code ist wirklich schwer anzuschauen. Können Sie es sauber? Was sind all diese schwebenden Kommas ','? Sollen diejenigen zu ';'? Sollten Sie kündigen, javascript-Anweisungen mit Semikolons ';'.
  • Vielen Dank für Ihre Antwort. ich habe diesen code aus dem Netz. dies ist der link "jsfiddle.net/insin/cmewv". Es funktioniert völlig in Ordnung, außer, dass es auch Exporte Tasten und tex eingereicht..Wie kann ich das beseitigen dieser guide..mich bitte
  • zeig mir deinen HTML-code, bitte.
  • Ich habe bearbeitet die Frage.Bitte werfen Sie einen Blick.
  • Ihr code packt die gesamte innerHTML für Ihren Tisch, so natürlich es zeigt sich in Excel mit dem gleichen Inhalt (zumindest das, verbunden durch die unterschiedliche Anzeige in Excel). Wenn Sie nicht möchten, dass die Inhalte in Ihre Excel-Datei, dann müssen Sie entweder zum erstellen einer separaten Tabelle ohne Inhalt, oder löschen Sie die Inhalte vor dem erstellen des Excel exportieren.
  • Hi Tim. Ich set-tag class="ignore" für alle Schaltflächen und Textfelder, auf die ich nicht wollen, exportieren und verwenden den folgenden code in return-Funktion " $(Tabelle).find('.ignorieren').entfernen();". Dies entfernt die Schaltflächen und Textfelder in die Seite, und exportieren Sie nur die Werte, die fein gearbeitet. Will ich aber behalten Sie die Steuerelemente in die Seite, und exportieren nur den Wert des Inhalts in der Tabelle. Wie kann ich erreichen, dass..Bitte guide mich

InformationsquelleAutor Dinesh | 2014-05-03
Schreibe einen Kommentar