0

最も単純な CSS を使用してライトボックス ビューを表示しました。私が使用したコードは、ここから不要な CSS プロパティを削除したものです。

<style>
        .black_overlay{
            display: block;

        }
        .white_content {
            display: block;

        }
    </style>

フォームの HTML

 <div id="light" class="white_content">      
        <input id="name" name="name" type="text" />

        <input id="password" name="password" type="password" />
        <input type="submit" name="submit" value="Sign In" onclick="check(this.form)"/>

        </div>

        <div id="fade" class="black_overlay"></div>

フィールドが正しいかどうかを確認する JavaScript 関数

function check(form)/*function to check userid & password*/
{

var name= $( "#name" );
var pass=$("#password");
 if(name== "admin" && pass == "admin")
  {
  document.getElementById('light').style.display='none';
  document.getElementById('fade').style.display='none';
  }
 else
 { 
   alert("Error Password or Username");/*displays error message*/
  }
}

私が望む機能は、ユーザーが正しい名前とパスを入力すると、つまり「管理者」であるライトボックスの効果が消えてしまうことです...しかし、そうではありません。ライトボックスはまだそこにあります。どうすれば閉じることができますか。また、ページの読み込み時にこのライトボックス効果が表示されるようにしたいと考えています。

4

2 に答える 2

0

交換

var name= $( "#name" );
var pass=$("#password");

var name= $( "#name" ).val();
var pass=$("#password").val();
于 2012-04-18T19:31:02.547 に答える
0

送信イベントがキャプチャーされず、防止されないという問題はありますか? マークアップにはフォームがありません。のように追加すると

<form id="submit-me"> your form inputs </div>

JS経由で観察できます

$("#submit-me").submit(function(event) {
  // your js code
  event.preventDefault();
});

実際の例では、「return false;」を追加してみてください。onclickハンドラで?しかし、これが機能するかどうかはわかりません...

よろしくお願いします

于 2012-04-18T19:42:43.203 に答える