#javascript #jquery #variables #input #selector
#javascript #jquery #переменные #ввод #селектор
Вопрос:
var inputvalue = $(this).attr('value')
$('input[value=inputvalue] label').css({
'-webkit-transition': 'opacity 0.4s linear',
'opacity': '0'
});
Но это не работает. Как и ожидалось, значение=inputvalue не получает эту переменную, но ищет это имя. Как я могу это сделать?
Большое спасибо 🙂
Комментарии:
1. Рассматривали ли вы возможность использования
$(this).val()
вместо$(this).attr('value')
? О, и селектор атрибутов equals требует, чтобы значения были заключены в кавычки. ‘Кавычки обязательны.’ Ссылка:val()
, атрибут равен селектору .2. Можете ли вы опубликовать свою разметку? Это поможет нам понять, что вы пытаетесь сделать
Ответ №1:
Здесь нужно использовать некоторую конкатенацию строк.
var inputvalue = $(this).val();
$('input[value="' inputvalue '"] label').css({
'-webkit-transition': 'opacity 0.4s linear',
'opacity': '0'
});
Ответ №2:
попробуйте это: пример
HTML:
<label for="myinput">Label for input</label>
<input id="myinput" />
<button>check</button>
<br />
JS:
$.expr[':'].value = function(obj, index, meta, stack){
if (meta[3] == $(obj).val())
return true;
return false;
};
$.fn.labelInput = function() {
if (this amp;amp; $(this).attr('id'))
return $('label[for="' $(this).attr('id') '"]');
return null;
}
$('button').bind('click', function(event) {
var
inputvalue = $('input').val(),
cssOpcions = {
'-webkit-transition': 'opacity 0.4s linear',
'opacity': '0'
};
$('input:value(' inputvalue ')')
.css(cssOpcions)
.labelInput().css(cssOptions);
});