Как проверить значение переменной jQuery из формы?

149
20 октября 2018, 19:10

Вот кусок моей формы:

<div class="form-group">
  <label for="firstName">Firstname</label>
  <input id="first_name" name="first_name" type="text" class="form-control">
</div>

В скрипте при помощи jQuery я объявляю переменную firstName и инициализирую её значением из формы:

var firstName  = $("#first_name")

Сразу после этой строки я прекрасно могу увидеть значение переменной про помощи alert(firstName.val());, но затем по нажатию кнопки я вызываю функцию, в которую передаю эту переменную в качестве параметра.

mynamespace.MyFunc(firstName);

При попытке напечатать значение переменной на первой строке в теле функции, alert ничего вообще не выводит. Таким образом, код:

mynamespace.MyFunc(element) {
  alert(element.val());
}

ничего не вернёт.

Как мне проверить содержимое переменной непосредственно в функции?

Answer 1

Это так выглядит?

var firstName = $('#first_name'); 
 
$('#button').on('click',function(){ 
  MyFunc(firstName); 
}); 
 
function MyFunc(element) { 
  if(element.val()!='') 
  alert(element.val()); 
  else 
  alert('Вы ничего не ввели в поле'); 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<div class="form-group"> 
  <label for="firstName">Firstname</label> 
  <input id="first_name" name="first_name" type="text" class="form-control"> 
</div> 
 
<button id="button">press</button>

Answer 2

Функция jQuery возвращает не DOM element, а коллекцию элементов, соответствующих заданному селектору. Поэтому и работать с ее результатом следует как с коллекцией. Рекомендуется использовать функцию each.

firstName.each(function() { mynamespace.MyFunc(this); });
READ ALSO
Юнит тестирование асинхронного метода

Юнит тестирование асинхронного метода

Написал метод для тестирования входа в аккаунт:

155
Удаление временных файлов в Temp

Удаление временных файлов в Temp

Решил написать программу которая будет удалять временные файлы которые старше n-днейПрограмма файлы удаляет, но есть одно НО, те файлы которые...

152
Извлечь корень из отрицательного числа

Извлечь корень из отрицательного числа

Как извлечь корень из отрицательного числа? Например, результатом выражения MathPow(-8, 1

195