我有打字稿代码
这是
$('.Switch').on('click', function() {
if ($(this).hasClass('On')) {
$(this).parent().find('input:checkbox').attr('checked', true);
$(this).removeClass('On').addClass('Off');
$(this).parent().find('input:hidden').val(0);
$(".filter_stops").each(function() {
if ($(this).slider( "option", "value" ) === 0) {
$(this).off('slidechange');
$(this).slider( "option", "value", 99 );
$(`#stops_${this.id.split('_')[1]}`).val(`Max ${$( this ).slider("value")} ${__('byten')}`);
$(`#filter_stops_${this.id.split('_')[1]}`).val($( this ).slider("value"));
$(this).on('slidechange', FilterFunctions.onFilterChange);
}
});
在此代码中,我有2个错误
在这一行$(this).parent().find('input:checkbox').attr('checked', true);
我有
类型' true'不能分配给'类型的参数(索引:数字,attr:字符串)=>字符串|数'
并在此
$(`#stops_${this.id.split('_')[1]}`).val(`Max ${$( this ).slider("value")} ${__('byten')}`);
财产' id'类型' TElement'。
上不存在
我该如何解决?
答案 0 :(得分:1)
在第一种情况下,使用:
$(this).parent().find('input:checkbox').prop('checked', true);
因为使用attr
,您只获得属性的初始值(如果已设置)。 prop
给出了该属性的当前值。
对于第二种情况,请使用:
$(this).attr('id').
或
this.getAttribute('id')
而不是
this.id
希望这能为你服务。