|
25.05.2017, 15:19
|
Профессор
|
|
Регистрация: 15.09.2015
Сообщений: 180
|
|
Помогите с селектом
Помогите допилить код:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<button id="save">СОХРАНИТЬ</button><br>
<select id="name1">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select><br>
<select id="name2">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select><br>
<select id="name3">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select>
<script>
$('select').on('change', function(){
var name = document.querySelectorAll("[id^='name']");
var a = 0;
for (var i = 0; i< 3; i++)
{
if(name[i].value == 'F200'){
$("#save").attr("disabled", true);
$("#save").css({"background-color": "red"});
}else{
$("#save").attr("disabled", false);
$("#save").css({"background-color": "blue"});
}
}
});
</script>
Последний раз редактировалось Sav2907, 25.05.2017 в 16:24.
|
|
25.05.2017, 15:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,123
|
|
Sav2907,
в чём проблема?
|
|
25.05.2017, 15:57
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,228
|
|
Сообщение от Sav2907
|
name[i].value == 'F200'
|
У тебя ни в одном селекте нет опции с таким значением валуе...
|
|
25.05.2017, 16:26
|
Профессор
|
|
Регистрация: 15.09.2015
Сообщений: 180
|
|
Поправил код, не работает условие, если F200 хотя бы в одном селекте, то красный цвет
|
|
25.05.2017, 16:36
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,123
|
|
Sav2907,
строки 28 - 36
{ if(name[i].value == 'F200') a = true;}
далее попробуйте сами
|
|
25.05.2017, 17:24
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
#save {
background-color: blue;
}
#save:disabled {
background-color: red;
}
var select = $('select');
var save = $('#save');
select.change(function() {
for(var i = 0; i < select.length; i++) {
if(select[i].value === 'F200') {
return save.prop('disabled', true);
}
}
save.prop('disabled', false);
});
|
|
25.05.2017, 17:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,123
|
|
Ruslan_xDD,
Sav2907,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
#save {
background-color: blue;
}
#save:disabled {
background-color: red;
}
</style>
</head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<button id="save" >СОХРАНИТЬ</button><br>
<select id="name1">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select><br>
<select id="name2">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select><br>
<select id="name3">
<option selected></option>
<option value="F100">F100</option>
<option value="F200">F200</option>
<option value="F300">F300</option>
</select>
<script>
$('select').on('change', function(){
var name = document.querySelectorAll("[id^='name']");
var a = false;
for (var i = 0; i< 3; i++) if(name[i].value == 'F200') {a = true; break};
$("#save").prop("disabled", a)
//.css({"background-color": a ? "red" : "blue"});
});
</script>
</body>
</html>
|
|
25.05.2017, 18:04
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
Вызов принят
$('select').change((a, b, c) => {
a = !1;
b = $('[id^=name]')
for(c of b) if(c.value == 'F200') {a = !0; break}
$('save').prop('disabled', a);
});
|
|
25.05.2017, 18:08
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,123
|
|
Ruslan_xDD,
это был не вызов, а спасибо за то что напомнил про css селектор :disabled
|
|
26.05.2017, 12:34
|
Профессор
|
|
Регистрация: 15.09.2015
Сообщений: 180
|
|
Спасибо большое
|
|
|
|