入力フィールドが空であれば、ボタンonclickイベントを別の関数にジャンプしようとしています。 if文内の関数は、2つのパラメータ(1つの配列、1つの文字列変数)を持つ必要があります。関数はすべての入力要素をループして値を持っているかどうかをチェックし、そうでない場合は後で.innerHTMLを持つp要素に代入する変数にテキストを追加します。関数の2つのパラメータ
入力パラメータだけで動作しましたが、msgを追加しようとすると動作を停止しました。たぶんそれは単純な理由ですが、私はこれに新しいです。
どうすればこの作品を作成できますか?ここで
var assignment = document.getElementById("assignment");
var inputs = assignment.getElementsByTagName('input');
var btnCreate = document.getElementById("submit");
var message = document.getElementById("message");
var msg = "";
btnCreate.onclick = function() {
if (inputs[0].value === "" || inputs[1].value === "" || inputs[2].value === "") {
emptyInputs(inputs,msg);
}
message.innerHTML = msg;
}
function emptyInputs(input,text) {
for(var i = 0; i < input.length; i++) {
if (input[i].value === "") {
if(!text) {
missing();
}
text += "- " + input[i].name + "<br />"; \t
}
function missing() {
text = "<strong>Please type in:</strong> <br />";
}
}
}
<section id="assignment">
<h1>Add new user</h1>
<form id="newUser">
<div class="inputGroup">
<label for="username">Username</label>
<input type="text" id="username" name="username" />
</div>
<div class="inputGroup">
<label for="password">Password:</label>
<input type="password" id="password" name="password"/>
</div>
<div class="inputGroup">
<label for="passwordConfirm">Confirm password:</label>
<input type="password" id="password2Confirm" name="confirmPassword"/>
</div>
<button id="submit" type="button">Opprett</button>
</form>
<p id="message"></p>
</section>
ありがとう!それは私をたくさん助けました。 – jhermansen