3

私が抱えている問題は、ユーザーがuserdata入力を空白のままにした場合、その入力をターゲットにしてテキストを表示し、それが必須フィールドであることを通知することです。

innerHTMLメッセージを入力フィールドに送信するdivか、直接入力フィールドに送信するために使用していますが、何も表示されません。も使用しようとしましたが<p><span>それも機能しませんでした。どんな助けでも大歓迎です。

<!doctype html>
<html>
  <head>
  </head>
  <body>
    <form>
      <input type="text" id="user1">
      <div id="error"></div>
      <button onClick="test()">Work</button>
    </form>
    <script type="text/javascript">
      function test(){
        var userdata = document.getElementById("user1").value;
        if(userdata == ""){
          document.getElementById("error").innerHTML="Please fill in Blanks";
        }
      }
    </script>
  </body>
</html>
4

2 に答える 2

2

ボタンの行を次のように変更するだけです。

<button onClick="test();return false;">Work</button>

InnerHTML は正常に機能していましたが、ボタンのデフォルトの動作は「POST」リクエストを作成し、ページを更新して innerHtml の変更を消去していました。return false ステートメントは、この既定の動作を無効にして、コードが想定どおりに機能するようにします。

テスト済みで動作しています。それが役に立てば幸い。

于 2013-07-20T08:01:47.610 に答える
2

JSBINはこちら

HTML

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
  <form>
      <input type="text" id="user1">
      <div id="error"></div>
      <button onClick="test();return false;">Work</button>
    </form>
</body>
</html>

そしてJavaScriptでは、else 条件も追加します

if(userdata === ""){
     document.getElementById("error").innerHTML="Please fill in Blanks";
} else{
     document.getElementById("error").innerHTML="";
}
于 2013-07-20T08:08:18.847 に答える