首页 > 解决方案 > Ajax - 如何检查 CSS 类的返回 HTML?

问题描述

我正在使用 Ajax 发布到 .Net MVC 控制器。它返回要在页面的一部分上显示的 HTML。我需要做的是以某种方式确定 HTML 是否包含类名,以便我可以使用它来更新网页的另一部分。

这是我的 Ajax 调用。

 $.ajax({
    type: "POST",
    url: url,
    data: data,
    success: function (response) {
        $("#validation-remarks").html(response);
        $("#updateMessage").html(response);

        console.log(response);

        var html = $.parseHTML(response);
        //somehow check the HTML for a value

        $("#divLoading").hide();
    }

它返回以下 Bootstrap HTML 之一。

@if (Model.IsSuccessful)
{
    <div class="alert alert-dismissible alert-success">
        <button type="button" class="close" data-dismiss="alert">&times;</button>
        @Model.UpdateMessage
    </div>
}
else
{
    <div class="alert alert-dismissible alert-danger">
        <button type="button" class="close" data-dismiss="alert">&times;</button>
        <strong>@Model.UpdateMessage</strong> 

        <div class="pt-2">
            @Html.Raw(Model.ValidationMessage)
        </div>
    </div>
}

我想做的是查看返回的 HTML 是否包含“alert-success”或“alert-danger”类。然后,我可以根据我找到的 CSS 类名称,用“成功”或“失败”等文本更新页面另一部分的消息。

我看到了一个 jQuery.parseHTML() 但我不确定从那里如何处理它来确定 HTML 是否包含这些类文件之一。

用 JSON 更新

尝试使用 JSON,但出现错误。如果我能让它发挥作用,我认为最终这是查看它是否有效而不是寻找 css 类的最佳方法。

var json = $.parseJSON(response);

alert("json value: " + json.IsValid);

if (json.IsValid === false) {
    alert("Valid is false");
}

在此处输入图像描述

在此处输入图像描述

标签: jqueryajaxasp.net-mvcasp.net-ajax

解决方案


我认为您可以轻松地使用 Javascript 来搜索该 CSS 类。喜欢response.indexOf('NameOfClass') > -1。我希望它有意义。


推荐阅读