无法使用 jquery 删除文本框

我使用 asp.net core 创建了复选框:


<div class="form-group">

    <label asp-for="EthinicalGroups" class="control-label"></label><br />

    @{int i = 0;}

    @foreach (var item in ViewBag.EthinicalGroup)

    {

        <input name="EthinicalGroup" value="@item.Id" type="checkbox" id="EthinicalGroup[@i]" />

        <label>@item.Name</label><br />

        i++;

    }

</div>

在检查复选框时,我添加了一个文本框,在取消选中时,我试图删除一个复选框,但无法删除一个复选框。


$('form input[type=checkbox]').change(function (e) {

    e.preventDefault();


    if ($(this).prop("checked") == true) {

        var className = $(this).attr('id');

        b = className + "value";

        $(this).after('&nbsp;<input type="text" id="'+b+'"  size="4" name="Value">');


    }

    else {

        var className = $(this).attr('id');

        b = className + "value";

        $("#"+b).remove();

    }

});

如何在取消选中复选框时删除文本框。


慕虎7371278
浏览 88回答 1
1回答

慕雪6442864

您需要使用value复选框的属性来选择文本框,因为name所有复选框都相同:$('form input[type=checkbox]').change(function (e) {&nbsp; &nbsp; e.preventDefault();&nbsp; &nbsp; if ($(this).prop("checked") == true) {&nbsp; &nbsp; &nbsp; &nbsp; var className = $(this).attr('value');&nbsp; &nbsp; &nbsp; &nbsp; b = className + "value";&nbsp; &nbsp; &nbsp; &nbsp; $(this).after('&nbsp;<input type="text" id="'+b+'"&nbsp; size="4" name="Value">');&nbsp; &nbsp; }&nbsp; &nbsp; else {&nbsp; &nbsp; &nbsp; &nbsp; var className = $(this).attr('value');&nbsp; &nbsp; &nbsp; &nbsp; b = className + "value";&nbsp; &nbsp; &nbsp; &nbsp; $("#"+b).remove();&nbsp; &nbsp; }});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript