因此,我正在动态插入一个罢工元素,但它在HTML标记中呈现,但没有直观显示。 Chrome检查器显示已添加罢工元素。是因为我在输入元素周围添加了它吗?

这是jQuery

$("#ResidentialStandardPeriod").change(function () {
    period = $("#ResidentialStandardPeriod").val();
    console.log(period);
    if (period == $('#' + period).attr('id')) {
        $('#' + period).attr('disabled', true).wrap("<strike>")
        $('input[type=checkbox]').not('#' + period).attr('disabled', false);
    }
});

最佳答案

您不能用input包装</del>元素,因为不会对输入显示任何影响
但是您可以包装下一个元素,在您的情况下为number
我希望您将数字包装在<span>中,然后指定该跨度。

的HTML

<input type="checkbox" value="1" id="1"><span>1</span><br>
<input type="checkbox" value="1" id="2"><span>2</span><br>
<input type="checkbox" value="1" id="3"><span>3</span><br>
<input type="checkbox" value="1" id="4"><span>4</span><br>


jQuery查询

 $('#Period').change(function(){
        period = $('#Period').val();
        $("span").unwrap();
        console.log(period);
        if (period == $('#'+period).attr('id')){
            $('#'+period).attr('disabled',true).next("span").wrap("<del/>");
            $('input[type=checkbox]').not('#'+period).attr('disabled', false);
        }
    });


DEMO

10-07 22:00