Проверьте, правильно ли введен номер по идентификатору - JavaScript - PullRequest
0 голосов
/ 15 мая 2011

Хотелось бы знать, как проверить истину и ложь и в ответ выдать сообщение об ошибке, если проверено, а число неверно ..

<input name="student1" type="text" size="1" id="studentgrade1"/>
<input name="student2" type="text" size="1" id="studentgrade2"/>
<input name="student3" type="text" size="1" id="studentgrade3"/>

так что здесь у нас есть 3 поля ввода, теперь я хотел бы проверитьрезультат путем ввода числа в эти поля ввода.

studentgrade1 = 78

studentgrade2 = 49

studentgrade3 = 90

<< Использование JavaScript >>

Итак, если пользователь ввел неправильное число, например, "4" в поле ввода ошибки отображения (studentgrade1) ..

то же самое для otherinputbox, и если введено правильное число, отобразится сообщение с сообщением .. правильный.

http://jsfiddle.net/JxfcH/5/

Ответы [ 3 ]

1 голос
/ 15 мая 2011

ОК, ваш вопрос немного неясен, но я предполагаю, что вы хотите показать ошибку, если вход в текстовое поле не равен некоторому предварительному условию.

здесь есть измененная функция checkGrade

function checkgrade() {
    var stud1 = document.getElementById("studentgrade1"); 
    VAR errText = "";    
    if (stud1.exists() && (parseInt(stud1.value) == 78){return true;}
    else{errText += "stud1  error";}
    //do similiar processing for stud2 and stud 3.
    alert(errText);

}
0 голосов
/ 15 мая 2011

Попробуйте это http://jsfiddle.net/JxfcH/11/

function checkgrade() {

var stud1 = document.getElementById("studentgrade1");   
var stud2 = document.getElementById("studentgrade2");  
var stud3 = document.getElementById("studentgrade3");  

if (((parseInt(stud1.value) == 78)) && ((parseInt(stud2.value) == 49)) && ((parseInt(stud3.value) == 90)))
{
alert("correct");
}
else
{
alert("error correct those values");
}

}
0 голосов
/ 15 мая 2011

См. Демонстрацию & # x2192;

Я думаю, это то, что вы ищете, хотя я бы порекомендовал разделить вашу переменную «листа ответов» запятыми, а затем использовать split(',') для создания массива:

// answers
var result ="756789";

// turn result into array
var aResult = [];
for (var i = 0, il = result.length; i < il; i+=2) {
    aResult.push(result[i]+result[i+1]);
}

function checkgrade() {
    var tInput, 
        msg = '';

    for (var i = 0, il = aResult.length; i < il; i++) {

        tInput = document.getElementById('studentgrade'+(i+1));

        msg += 'Grade ' + (i+1) + ' ' +
            (tInput && tInput.value == aResult[i] ? '' : 'in') +
            'correct!<br>';

    }

    document.getElementById('messageDiv').innerHTML = msg;
}

См. Демонстрацию & # x2192;

...