Визуализация частичного представления с использованием функции jQuery .load()

У меня есть проект, в котором, когда я что-то вставляю, я хочу обновить только частичное представление или только таблицу. Когда я нажимаю кнопку для вставки, она вставляет, но не загружает таблицу, таблица просто отображается пустой

Вид:

@model ClinicManagemet.Models.Assessment

@{
ViewBag.Title = "Update Assessment";
}
<script src="~/Scripts/jquery-3.1.1.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<h2>Assessment</h2>
<script>
    $(document).ready(function () {
        $('#btn-disease').click(function () {
            var diseaseID = $('#DiseaseID').val();
            var assessmentID = $('#AssessmentID').val();
            var urll = '/DiseaseLists/_DiseaseList?id=' + assessmentID;
            $.ajax({
                type: "POST",
                dataType: "Json",
                data: {
                    'diseaseID': diseaseID,
                    'assessmentID': assessmentID
                },
                url: '@Url.Action("CreateDisease", "DiseaseLists")',
                success: function (f) {
                    $('#tbl-disease').load(urll);
                    alert(f);
                }
            })
        })
    })
</script>
@Html.HiddenFor(model => model.AssessmentID)
<div class="form-group">
    @Html.LabelFor(model => model.DiseaseID, "DiseaseID", htmlAttributes: new { @class = "control-label col-md-2" })

    <div class="col-md-10">
        @Html.DropDownList("DiseaseID", null, htmlAttributes: new { @class = "form-control" })
        @Html.ValidationMessageFor(model => model.DiseaseID, "", new { @class = "text-danger" })
    </div>
</div>
<div class="form-group">
    <div class="col-md-offset-2 col-md-10">
        <input type="submit" id="btn-disease" value="Add" />
    </div>
</div>
<div class="form-group">
    <div class="col-md-offset-2W col-md-10">
        <div id="tbl-disease">
            @{
                Html.RenderAction("_DiseaseList", "DiseaseLists", new { Model.AssessmentID });
            }
        </div>
    </div>
</div>

контроллер частичного представления:

public ActionResult _DiseaseList(int? assessmentID)
    {
        var diseaseLists = db.DiseaseLists.Include(d => d.Assessment).Include(d => d.Disease).Where(d => d.AssessmentID == assessmentID);
        return PartialView(diseaseLists.ToList());
    }

person kielou    schedule 21.06.2017    source источник
comment
попробуй так $('#tbl-disease').load( '@Url.Action("_DiseaseList", "DiseaseLists",new {assessmentID = assessmentID})' );   -  person Curiousdev    schedule 21.06.2017
comment
@Curiousdev все работало гладко. Благодарность   -  person kielou    schedule 21.06.2017
comment
@Mark нет, он не вернет HTML ajax в примере ссылается на другое действие @Url.Action("CreateDisease", "DiseaseLists")   -  person Curiousdev    schedule 21.06.2017
comment
@kielou отлично :)   -  person Curiousdev    schedule 21.06.2017
comment
@Марк, я не знаю, как использовать html(). Я действительно не знаю, как работает html().   -  person kielou    schedule 21.06.2017
comment
Дополнительные ссылки: jQuery.load() и jQuery.html().   -  person Tetsuya Yamamoto    schedule 21.06.2017


Ответы (1)


Как сказал Curiousdev в комментарии, я просто изменил код в своем jquery.

$('#tbl-disease').load( '@Url.Action("_DiseaseList", "DiseaseLists",new {assessmentID = assessmentID})' );
person kielou    schedule 21.06.2017
comment
Пожалуйста, пометьте свой ответ как принятый для будущих ссылок - person Curiousdev; 21.06.2017
comment
@Curiousdev Я буду, но мне нужно подождать 2 дня - person kielou; 21.06.2017