2017-04-23 14 views
-1

あなたの名前を入力して吸うか吸うかを教えてくれる小さなウェブサイトを作ろうとしています。 (ばかばかしいのですが、学習目的のためだけに)テキストの文字列に特定の文字が含まれているかどうかを調べる

私はそれがうまくいくと思ったのは、名前に母音 "a"が含まれているかどうかを確認することですが、このコードブロックが機能しない理由:

将来、クエリパラメータを追加して各名前に固有のリンクを付ける方法を知っておくと役立つと思います。

それにもかかわらず、ここに私のコードです。どんな助けもありがとう。あなたが行くここ

function nameSubmit() { 
 
    var nameInput = document.getElementById('checkName'); 
 

 
    if (nameInput.contains('a')) { 
 
    document.getElementById('ans').innerHTML = "You don't suck!" 
 
    } else if (nameInput == "") { 
 
    document.getElementById('ans').innerHTML = "Enter a name please"; 
 
    } else { 
 
    document.getElementById('ans').innerHTML = "You suck"; 
 
    } 
 
}
<!DOCTYPE html> 
 
<html> 
 
\t <head> 
 
\t \t <!-- Links --> 
 
\t \t <link href="assets/app.css" rel="stylesheet" type="text/css"> 
 
\t \t <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900" rel="stylesheet"> 
 
\t \t <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.4.1/css/simple-line-icons.css"> 
 
\t \t <script src="https://use.fontawesome.com/97db52ab8f.js"></script> 
 
\t \t <link rel="shortcut icon" href="#" /> 
 
\t \t <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
\t \t <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 

 
\t \t <!-- Meta Tags --> 
 
\t \t <meta charset="utf-8"> 
 

 
\t \t <!-- Title --> 
 
\t \t <title>Website Title</title> 
 
\t </head> 
 
<body> 
 

 
\t <input type="text" id="nameCheck"> 
 

 
\t <button onclick="nameSubmit()">Submit</button> 
 

 
\t <p id="ans"></p> 
 

 
<script src="assets/main.js" type="text/javascript"></script> 
 
</body> 
 
</html>

+0

'と 'nameInput.value == '' を作るためにあなたのIFSの順番を並び替えます'...入力オブジェクト自体ではなく、入力オブジェクトの値をチェックする必要があります。 – Li357

+1

nameCheckとcheckNameも同じで、indexOf( "a")!= - 1の代わりに – mplungjan

答えて

0

。私は読みやすいようにすべての不必要なhtmlを取り除きました。また、より多くの意味:)

function nameSubmit() { 
 
    var nameInput = document.getElementById('nameCheck').value.trim(); 
 
    var output = document.getElementById('ans'); 
 
    if (!nameInput) { 
 
    output.innerHTML = "Enter a name please"; 
 
    } else if (nameInput.indexOf('a') === -1) { 
 
    output.innerHTML = "You suck!" 
 
    } else { 
 
    output.innerHTML = "You don't suck"; 
 
    } 
 
}
<input type="text" id="nameCheck"> 
 

 
<button onclick="nameSubmit()">Submit</button> 
 

 
<p id="ans"></p>
あなたはnameInput.value.contains( 'A') `しなければならない

+0

を試してください。OPはaがない場合は "あなたが吸う"と答え、aがある場合は "吸いません"あなたはそのケースを裏返した。 – Li357

+1

それから、ちょうど周囲のテキストをひっくり返してください。それを簡単にしてくれてありがとうmplungjan :) – Noobit

関連する問題