Блокировка определённых option у select
В форме есть input и select.
Нужно, чтоб когда в myinput введёно определённое слово, например Казахстан то в myselect блокировались определённые option, например option 1 и option 4 становились disabled. Как это реализовать с помощью jQuery? Догадываюсь только, что с помощью .attr("disabled", "disabled"); <form id="myform"> <input id="myinput"> <select id="myselect"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </form> |
<form id="myform"> <input id="myinput"> <select id="myselect"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </form> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> $('#myselect option[value="2"], #myselect option[value="4"]').attr('disabled', 'disabled'); </script> |
cmd
Свет пролили, благодарю ) Только в вашем примере options изначально заблокированы, а нужно, чтоб после ввода определённого слова. |
Вы просите готовый скрипт с нуля.
Это работа, и за нее обычно платят деньги. Для таких сообщений предназначен раздел форума "Работа". Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела. |
Понял, извиняюсь.
Думаю должно быть как-то так, но не заработало: <form id="myform"> <input id="myinput"> <select id="myselect"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </form> $('#myinput [value="Кахазстан"]').change(function(){ $('#myselect option[value="2"], #myselect option[value="4"]').attr('disabled', 'disabled'); $('#myselect option[value="1"]').attr('selected', 'true'); }); только вместо .change конечно должно быть другое событие, определяющее соответствие введённого текста.. |
|
.keyup .keypress
.keyup и .keypress проверяют нажатие конкретной клавиши или их сочетания. Получается, нужно проверить нажатые подряд (но не одновременно) нужные символы.
|
$('#myinput').on('change keyup', function() { |
Изначально я хотел получить значение input value по атрибуту .change, и если value соответствует, тогда событие.
Это было бы проще, т.к. нужно задавать не коды символов, а просто нужное слово |
$('#myinput').on('keyup', function() { alert($(this).val()); }); |
Часовой пояс GMT +3, время: 02:17. |