2013-12-13 4 views
-1

У меня есть приложение MVC 4, над которым я работаю. Одна из страниц - это страница входа с двумя текстовыми полями для имени пользователя и пароля. У меня есть кнопка отправки внизу страницы. У меня есть стиль, уже настроенный для кнопки, то, что я пытаюсь сделать, это сделать так, что кнопка - это мой серый цвет, который я установил, когда в текстовых полях нет ничего, когда есть значение в обоих текстовых полях , кнопка изменит цвет. Как я могу выполнить это с помощью JavaScript? Вот что я пробовал, но он просто порождает ошибку:Изменить цвет кнопки на основе текстовых полей

$(document).ready(function() { 
    $("#uName, #pWord").value(function() { 
     if ($("#uName, #pWord").is(null)) { 
      $("#submitBtnNormal").removeClass('on'); 
     } else { 
      $("#submitBtnNormal").addClass('on'); 
     }; 
    }); 
}); 

Спасибо за любую помощь заранее! Я не очень хорошо разбираюсь в JS.

ответ

2

Используйте этот

$(document).ready(function() { 
    $("#uName, #pWord").change(function() { 
     if (!$("#uName").val().length && !$("#pWord").val().length) { 
      $("#submitBtnNormal").removeClass('on'); 
     } else { 
      $("#submitBtnNormal").addClass('on'); 
     }; 
    }); 
}); 

Там нет события называется value. Вы хотите захватить событие change, которое срабатывает при редактировании текста полей ввода.

+0

мне нужно маркировать DIV с uName и pWord, или мне нужно установить делать up @ Html.EditorFor (model => model.Username, new {id = "uName"}) и для pWord? – Skrubb

+0

@Skrubb - Текстовые поля ввода должны иметь эти идентификаторы, а не div. – Krishna

0

Во-первых, метод, который вы пытаетесь использовать, - val, а не value. Во-вторых, вам нужно запустить код под событием, например keyup. Попробуйте это:

$(document).ready(function() { 
    $("#uName, #pWord").keyup(function() { 
     if (!$("#uName").val() || !$("#pWord").val()) { 
      $("#submitBtnNormal").removeClass('on'); 
     } else { 
      $("#submitBtnNormal").addClass('on'); 
     }; 
    }); 
}); 
0

Попробуйте это,

Js Script

$(document).ready(function() { 
    $("#uName, #pWord").change(function() { 
     if ($("#uName").val()!='' && $("#pWord").val()!='') { 

      $("#submitBtnNormal").removeClass('on'); 
     } else { 
      $("#submitBtnNormal").addClass('on'); 
     }; 
    }); 
}); 

DEMO

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