2017-09-18 10 views
-2

送信ボタンを押したときにフォームの表示をなしに設定したいとします。 しかし、このコードは機能しません。投稿時にフォームを非表示

function myFunction() { 
 
    var x = document.getElementsByClassName("submit"); 
 
    x.style.display = "none"; 
 
}
<form class="submit" method="post"> 
 
    <input id="ceg" type="text" name="ceg" placeholder="Cég neve"><br> 
 
    <input id="ceg" type="text" name="kontakt" placeholder="Kapcsolattartó neve"><br> 
 
    <input id="ceg" type="email" name="" placeholder="Kapcsolattartó email címe"><br> 
 
    <input id="ceg" type="text" name="" placeholder="Munkakör leírása (20 szó)"><br> 
 
    <h1>Témakör</h1> 
 
    <input type="radio" name="menu" value="1">1</input><br> 
 
    <input type="radio" name="menu" value="2">2</input><br> 
 
    <input type="radio" name="menu" value="3">3</input><br> 
 
    <input type="submit" name="submit" value="submit" onload="myFunction"> 
 
</form>

+1

タイトルにタグを配置する必要はありません。タイトルの長さが十分でない場合、問題は正確には説明されていません。 – castis

+0

サイドノート、ID **は一意でなければならず、 'getElementsByClassName'はコレクションを返します。最後に ''タグはありません。入力が自動的に閉じます。 – j08691

答えて

0

あなたは本当にあなたの問題を解決するためにはJavaScriptを必要としません。 でサブミットクラススタイルを表示するだけです。(私はそのクラスの名前を変更するお勧めし、直感的ではありません)とフォームのクラスに入れては以下のチェックを属性:ページのsubmitionsずに頼らなければならないアクションを持っているとき

class="<?= (!empty($_POST)) ? 'submit' : ''; ?>" 

のjavascriptのソリューションにのみ必要とされています。送信すると、ページの実際の状態が失われ、スクリプトの変更が失われます。

PS:あなたの質問には関係ありませんが、あなたのhtmlを見直してください.Iidsは一意でなければならず、あなたは少し改善することができる他のものがあります。

関連する問題