繁体   English   中英

尝试删除 class 成功 ajax 后删除 html 元素

[英]Trying to remove class remove html element after successful ajax post

我试图在成功发布后从元素中删除 class 。 下面的代码为方便起见进行了简化,并未删除 class。

我不确定问题是什么。

页面元素:

    <div class="hide-lorem form-group row" id="LoremId">
        <div class="col-lg-10">
            Lorem
        </div>
    </div>

Javascript

                $.ajax({
                    type: "POST",
                    url: url,
                    data: $("#LoremHandler").serialize(),
                    success: function (data) {
                        var tr = "";

                        $("#LoremId").removeClass("hide-lorem");

                        //Append each row to html table
                        for (var i = 0; i < data.Jumps.length; i++) {
                            var date = dateFormatter(data.Jumps[i].LoremDate);
                            tr = $("<tr/>");
                            tr.append("<td>" + date + "</td>");
                            tr.append("<td>&pound;" + data.Jumps[i].LoremPlace + "</td>");
                            $("table").append(tr);

                        }
                    },
                    failure: function(response) {
                        alert(response.responseText);
                    },
                    error: function(response) {
                        alert(response.responseText);
                    }
                });

有几件事要强调。

问题:您正试图从一个ID中删除类,因为您可能在页面上有其他同名的 ID。

原因:使用ID并不理想,因为我假设您可能有其他同名的 ID。 这导致了这个问题。

简单且建议的解决方法:我建议将class添加到您的元素中,然后从该元素中删除Class removeClass() 我还在您的div中添加了一个 LoremId 作为 class 。

请参阅下面的工作代码:

 $.ajax({ type: "POST", url: url, data: $("#LoremHandler").serialize(), success: function(data) { var tr = ""; $(".LoremId").removeClass("hide-lorem"); //Append each row to html table for (var i = 0; i < data.Jumps.length; i++) { var date = dateFormatter(data.Jumps[i].LoremDate); tr = $("<tr/>"); tr.append("<td>" + date + "</td>"); tr.append("<td>&pound;" + data.Jumps[i].LoremPlace + "</td>"); $("table").append(tr); } }, failure: function(response) { alert(response.responseText); }, error: function(response) { alert(response.responseText); } });
 <div class="hide-lorem form-group row LoremId" id="LoremId"> <div class="col-lg-10"> Lorem </div> </div>

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM