Wie überprüfe ich, ob die Formulareingabe den Wert @ ha

Ich versuche zu überprüfen, ob eine Formulareingabe einen Wert enthält (egal, um welchen Wert es sich handelt), damit ich den Wert bei der Übermittlung an die Aktions-URL anhängen kann, wenn er vorhanden ist. Ich muss den Namen des Parameters hinzufügen, bevor ich den Wert hinzufüge, und nur einen leeren Parameternamen wie "P =" zu lassen, ohne dass ein Wert die Seite durcheinander bringt.

Hier ist mein Code:

function getParam() {

// reset url in case there were any previous params inputted

    document.form.action = 'http://www.domain.com'

    if (document.getElementById('p').value == 1) {
        document.form.action += 'P=' + document.getElementById('p').value;
    }

    if (document.getElementbyId('q').value == 1) {
        document.form.action += 'Q=' + document.getElementById('q').value;
    }

}

und das Formular:

<form name="form" id="form" method="post" action="">
    <input type="text" id="p" value="">
    <input type="text" id="q" value="">
    <input type="submit" value="Update" onClick="getParam();">
</form>

Ich dachte, das Setzen von Wert == 1 würde dazu führen, dass es einen einfachen Wert gibt, dass es keinen gibt, unabhängig davon, was der übermittelte Wert ist, aber ich denke, ich liege falsch.

Auch ich verwende if-Anweisungen, aber ich glaube, das ist schlechter Code, da ich kein anderes habe. Vielleicht mit einer switch-Anweisung, obwohl ich nicht sicher bin, wie ich das einrichten würde. Vielleicht

switch(value) {
    case document.getElementById('p').value == 1 :
        document.form.action += 'P=' + document.getElementById('p').value; :
    case document.getElementById('q').value == 1 :
        document.form.action += 'Q=' + document.getElementById('q').value; break;
}

Antworten auf die Frage(1)

Ihre Antwort auf die Frage