2016-09-29 2 views
-1

У меня есть текстовое поле, которое я проверяю, чтобы текстовое поле не было пустым перед отправкой, что отлично работает.Как убедиться, что только одно текстовое поле не пусто?

Как я могу убедиться, что он проверяет только для id = "Name" текстовое поле не пустое и игнорирует другое текстовое поле.

<input type="text" class="form-control" id="Name" aria-label="Name" placeholder="Name" required > 

<input type="text" class="form-control" id="address" aria-label="address" placeholder="address"> 

<input type="text" class="form-control" id="zip" aria-label="zip" placeholder="zip" > 

JS

$('input:text').val().length; 
+1

ли вы имеете в виду '$ ('# Названия') VAL() длину;'..? – vlaz

+0

'$ ('# Name'). Val(). Length;' – andrew

+0

Используйте правый селектор для задания. См. [Здесь] (http://www.w3schools.com/jquery/jquery_ref_selectors.asp) для списка селекторов jQuery. Как указывали другие, '$ ('# Name')' будет выбирать элемент, который вы хотите настроить. – Theo

ответ

2

Целевой элемент по идентификатору,

$('#Name').val().length; 
+0

Если html-теги разрешены, это не сработает. Например, текстовое поле может содержать теги , но оно не имеет строкового значения. Поэтому проверка должна выполняться с регулярным выражением для обработки тегов. Но если вы принимаете только допустимую строку, это приемлемо. – hakiko

0

Пробовали ли вы это?

$('#Name').val().length; 
+0

Если допустимы теги html, это не сработает. Например, текстовое поле может содержать теги , но оно не имеет строкового значения. – hakiko

+0

@hakkikonu вы можете сказать, что для _any_ одного куска jQuery когда-либо написано. «Но что, если идентификатор, на который вы нацеливаете изменения?» Я считаю, что ответ всегда будет, что это не имеет значения. Невозможно закодировать какую-либо ситуацию когда-либо - что, если выбор, который вы пытались стилить, меняется на div? Что делать, если правило CSS для элемента 'h1' перестает обращаться к нему, когда вы меняете его на' p'? Всегда есть какая-то структура, которую разработчик должен ожидать в HTML, которым они управляют. В большинстве случаев HTML не будет волшебным образом изменяться без вашего участия. – vlaz

+0

Хотя это может ответить на вопрос, оно не дает никакого контекста, чтобы объяснить, как и почему. Подумайте о том, чтобы добавить предложение или два, чтобы объяснить свой ответ и как его использовать. – brandonscript

0

Вы установили атрибут required на вход с идентификатором Name так form не представит, если он не имеет какое-то значение. Если вы хотите проверить непечатаемые вы можете использовать JQuery $.trim() метода:

$('form').submit(function(e) { 
 
    var name = $('#Name').val(); 
 
    if ($.trim(name) === '') { 
 
    e.preventDefault(); 
 
    return false; 
 
    } 
 
    console.log('form submited!'); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form> 
 
    <input type="text" class="form-control" id="Name" aria-label="Name" placeholder="Name" required /> 
 

 
    <input type="text" class="form-control" id="address" aria-label="address" placeholder="address" /> 
 

 
    <input type="text" class="form-control" id="zip" aria-label="zip" placeholder="zip" /> 
 
    <input type="submit" value="submit" /> 
 
</form>

Смежные вопросы