Frage

Ich habe ein Formular in meiner Anwendung erstellt wie folgt:

<form action="/search/" method="get">
   <input id="search-box" name="search" type="text" size=30 title="Search" value="" />
   <input id="search-submit" type="image" alt="Search" src="/images/search-button.gif" /> 
</form>

Aber wenn ich meine Form vorlege dann wird URL erstellt wie folgt:

mysitename.com/search/?search=hello&x=0&y=0

Kann jemand mir bitte erklären, warum diese x und y in meiner URL kommen. statt Bild Taste auf weitere Sache, wenn ich meine Form Code wie unten dann bin Änderung seiner Arbeits in Ordnung,

<form action="/search/" method="get">
   <input id="search-box" name="search" type="text" size=30 title="Search" value="" />
   <input id="search-submit" type="submit" value="Search"/> 
</form>

, aber ich brauche eine Bild-Taste, um meine Form gut aussehen. Bitte sagen Sie mir, wie Sie diese x und y parameteres von URL zu entfernen.

War es hilfreich?

Lösung

Sie werden immer Maus erhalten Koordinaten für einen Knopf submit = „image“

Sie können einen Standard verwenden Typ Submit-Button und nur Arten, um es anwenden um das Aussehen zu verändern.

<input type="submit" id="search-submit" value=""
    style="background-image: url(/images/search-button.gif); border: solid 0px #000000; width: WIDTHpx; height: HEIGHTpx;" />

Andere Tipps

Sie sind die Maus Koordinaten des Klicks. Ich glaube nicht, dass es eine Möglichkeit, sie zu verhindern - wenn Sie eine <input type='image'> verwenden dann Sie sie erhalten. Warum ist das ein Problem? Kannst du sie nicht einfach ignorieren?

Die Beantwortung Prashant Kommentar: Digg eine onclick Handler zum <input> hinzufügen (oder möglicherweise ein onsubmit Handler Form), die das ordentlich aussehende Such-URL erstellt und leitet den Browser auf diese URL, und dann kehrt false die <input> zu verhindern von Absenden des Formulars selbst. Wenn Sie JavaScript deaktivieren Sie werden sehen, dass Sie die x und y Parameter in der URL erhalten tun. Clever!

document.getElementById("formid").submit = function() {
    location = "/search/?search=" + encodeURIComponent( document.getElementById("search-box").value );
    return false;
};

Sie können einfach einen Wert für eine Bild Taste eingestellt, dies wird die reguläre Koordinaten Verhalten außer Kraft setzen. Er arbeitete für mich.

Zum Beispiel:

<input type="image" value="submit" src="sup.png" name="supprimer" />

wird die PHP-Variable $_POST['supprimer'] zurückkehren und nicht seine Koordinate als Bildtaste. Hoffe, dass dieser Trick wird Ihnen helfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top