Schaltfläche hinzufügen, um eine HTML-Seite mit Javascript

Ich versuche, ändern Sie die HTML-markup einer Seite, um einige button mit JavaScript.

Unten finden Sie ein "snippet" (ziemlich lang, ich entschuldige mich, aber ich wirklich brauchen Sie, um die Struktur der Seite) die Seite, die ich bin versucht zu ändern.

Meine JavaScript-code eingefügt wird, indem eine browser-Erweiterung (die ich erfolgreich hinzufügen können Sie das JavaScript auf der Seite und es läuft) und die einzige operation, die Sie tun sollten, ist das hinzufügen einer Schaltfläche in die richtige position.

Die HTML-Seite enthält ein <FORM> mit einer Tabelle.

Nach einigen Zeilen und Zellen gibt es eine Zelle, die enthält 3-Eingang-Tasten:

<input type="submit" name="submit" value="Set Ships">
<input type="button" name="sel" value="Select all" onclick="alert('Not Allowed.');">
<input type="button" name="desel" value="Deselect all" onclick="alert('Not Alloowed.');">

Möchte ich meinen JavaScript-code zu platzieren, eine vierte Schaltfläche ist nur nach den desel - Taste.
Dies ist der code, den ich verwenden Sie die Schaltfläche hinzufügen:

function add() {
    var element = document.createElement("input");
    element.setAttribute("type", "button");
    element.setAttribute("value", "invert");
    element.setAttribute("name", "button3");
    element.setAttribute("onclick", "foo()");
    document.flotta.appendChild(element);
}

Dieser code offensichtlich Orte, die den Knopf gerade am Ende meines Dokuments, nur nach der form (benannt flotta).

Merkte ich, dass ich nicht verwenden Sie die Funktion getElementById weil die <td> tag, kurz bevor die Tasten nicht über eine id verbunden.

Daher Frage ich mich, ob jemand kann mir eine Lösung fügen Sie die vierte Taste in der richtigen Stelle.

<html>
    <head>
    <title>fee foo</title>  
        . . . head code
    </head>

<body >
    <div id="Layer" name="Layer" /*other attributes*/"></div>
    <table /*table attributes*/>
    . . . table content
    </table>
<form id="flotta" name="flotta" method="post" action="home.php?sel=gestioneflotta">
    <table /*table attributes*/>
        <tbody>
            <tr><td>
            <table /* attributes*/>
                <tbody><tr>
                <td /* attributes*/></td>
                <td /* attributes*/></td>
                <td /* attributes*/></td>
                </tr>
                <tr>
                <td /* attributes*/">&nbsp;</td>
                <td bgcolor="ffffff" background="bg/pergamena.jpg" align="center">
                <input type="submit" name="submit" value="Set Ships">
                <input type="button" name="sel" value="Select all" onclick="alert('Not Allowed.');">
                <input type="button" name="desel" value="Deselect all" onclick="alert('Not Alloowed.');">   </td>
                <td background="bg/menu_d.gif">&nbsp;</td>
                </tr>
                <tr>
                <td /* attributes*/" width="11" height="11"></td>
                <td /* attributes*/></td>
                <td /* attributes*/></td>
            </tr>
            </tbody>
            </table>
        </td></tr>
            <tr>
            . . . another row
            </tr>

        </tbody>
    </table>
</form>
<table border="0" cellspacing="0" cellpadding="0" align=center  width=510>
    . . . another table
</table>

<script type="text/javascript">
some script
</script>
</body>

</html>
  • Verwenden Sie nicht setAttribute zu set-Taste, Eigenschaften, Verwendung von direct-Eigenschaften verwenden, wie element.type = "button";. Vor allem nicht, verwenden Sie diese syntax, um event-Handler zuweisen, verwenden Sie einfach element.onclick = foo; (oder eines der standard-DOM-level-2-Funktionen).
  • warum nicht u verwenden jquery
  • danke für deinen Tipp, aber meine Aufmerksamkeit ist mehr darauf gerichtet, wie um das Element in die richtige position. können Sie mir helfen?
InformationsquelleAutor nick2k3 | 2011-05-25
Schreibe einen Kommentar