Проверка текстового поля с помощью JavaScript - PullRequest
0 голосов
/ 08 июля 2011

Иметь текстовое поле a, и, если оно заполнено, убедитесь, что текстовое поле b заполнено также при выполнении отправки, и наоборот, если поле b заполнено, убедитесь, что в a также есть данные. Может ли это быть зациклено, чтобы проверить много текстовых полей, что если в строке a текстовых полей есть проверка данных, во 2-й строке текстовых полей также есть данные в тех, которые есть в строке a. Не нужно заполнять все текстовые поля в строке. Спасибо.

Ответы [ 2 ]

2 голосов
/ 08 июля 2011

Ваш вопрос немного сложен для понимания; было бы полезно, если бы вы могли лучше объяснить, что вы на самом деле хотите. Вам не нужно иметь никаких условий; просто сделайте следующее:

<script>
function checkForm() {
    if (!isEmpty(document.myForm.checkA.value)
        && !isEmpty(document.myForm.checkB.value))
        return true;
    else
        return false;
}

function isEmpty(text) {
    return text.length == 0 || !text.match(/[^\s]/))
}

</script>

<form name="myForm" onSubmit="return checkForm();">
    <input name="textA" type="text" />
    <input name="textB" type="text" />
    <input type="submit" value="Submit!" />
</form>
1 голос
/ 08 июля 2011

Это должно быть просто, если вы используете массив для хранения ссылок на ваши текстовые поля.Например (от макушки головы, так что это не будет на 100% верно), скажем, у вас 5 поперек и 3 вниз:

var col = new Array(5);
var row = new Array(3);
col[0] = document.myForm.checkA1;
col[1] = document.myForm.checkB1;
// etc

row[0] = col;

col = new Array(5);
col[0] = document.myForm.checkA2;
col[1] = document.myForm.checkB2;
// etc

row[1] = col;

col = new Array(5);
col[0] = document.myForm.checkA3;
col[1] = document.myForm.checkB3;
// etc

row[2] = col;

Теперь вы можете перебирать массив в row[0] и если вы обнаружите, например, что row[0][2] имеет текст, вам просто нужно убедиться, что row[1][2] также имеет текст.

...