У меня есть PHP-форма, в которой есть раскрывающееся меню для статуса занятости с вариантами "занятые", "занятые на себя" и "безработные".
Я хотел бы показать подтверждение, если кто-то выбирает безработных, когда они пытаются отправить форму.
Мой код ниже
var employment = $("#employment").val().length;
if( employment == 0 )
{
$("#employment").parent().css('background-color', '#B2E120');
error = true;
}
else{
$("#employment").parent().css('background-color', '#fff');
}
и мой выпадающий код выглядит следующим образом.
<option value="unemployed" title="Your tooltip here">Unemployed</option>
Предположим, что ваша надбавка более тщательно выглядит следующим образом:
<select name="employment">
<option value="unemployed" title="Unemployed title">Unemployed</option>
<option value="selfemployed" title="Self-Employed title">Self-Employed</option>
<option value="employed" title="Employed title">Employed</option>
</select>
Затем вы можете привязать событие change
к элементу select
и выполнить функцию, которая условно добавляет цвет фона:
<script>
// Wait until jQuery has loaded
$(function(){
// Bind change event
$('[name="employment"]').change(function(){
var val = $('[name="employment"] :selected').val();
if(val == 'unemployed') {
$('[name="employment"]').css('background-color', '#b2e120');
} else {
$('[name="employment"]').css('background-color', '#fff');
}
});
});
</script>
Вы можете увидеть это в действии здесь: http://jsfiddle.net/yMPHV/1/
Обратите внимание, что это происходит только при изменении выбора. Итак, если вы хотите, чтобы один и тот же код выполнялся при загрузке страницы, добавьте его после привязки к событию change
:
$('[name="employment"]').change();
Это вызовет событие изменения элемента select, тем самым выполняя ту же логику.
change
элемента select, привязка к событиюsubmit
в форме выглядит следующим образом: $ ('# jobs-form'). Submit (function () {var val = $ ('[name = " занятости "]: выбрано"). val (); if (val == 'безработный') {$ ('[name = "занятости"]'). css ('background-color', '# b2e120'); возврат false; // предотвращает отправку формы} return true; // теперь будет обрабатывать 'действие' формы));