Здравствуйте! Подскажите, что не так делаю.
Есть инпут, который обязательный для заполнения. Есть ссылка с скрытым атрибутом href. Если поле заполнено у ссылки появлется href, нет все остается как было https://jsfiddle.net/furcifer21/x5pdkcze/1/
$(document).ready срабатывает в момент готовности Dom. В вашем случае нужно использовать событие .change() на ваш input. А внутри проверка на заполненность поля.
Куча ошибок у вас если честно. И видно, что вы не понимаете как работает jq. Точки с запятой в двух местах не стояли. Что вы пытаетесь делать в проверке if я так и не понял, поэтому не менял
if (name.length != 0 ) {
$("a.next").attr("href");
}
Если инпут не пустой, то есть там стоит хотя бы один символ, добавить атрибут href. сделал ошибку при написании
Признаю, что очень слаб в jquery/javascript поэтому обращаюсь за помощью
furcifer, но вы не добавляете атрибут. Вы снимаете его показания. А так как удалили его вначале, то тут неопределённое значение. $("a.next").attr("href", "значение атрибута"); вот так добавляется значение
furcifer, опять же, у вас проверка односторонняя. А где else? тоесть если не пустое то вы делаете действие, а если пустое, то нет и соответственно если заполнить поле, а потом удалить, то ничего не произойдёт.
Юрий Янин а подскажите, если у меня много таких ссылок, каждой соответствует свое поле и у всех разные ссылки, прописывать для каждой такой код или это можно как то оптимизировать
$("a.next").removeAttr("href");
$('.question-part input').change(function(){
var name = $('.question-part input').val();
if (name.length != 0 ) {
$("a.next").attr("href", "#win2");
} else{
$("a.next").removeAttr("href");
};
});