在 ajax 查询中加载图像 (ASP.NET)

Load image in ajax query (ASP.NET)

我从后端ajax调用returnjson

这里是 ajax 调用的代码

<script>
$('#search').click(function () {
   $("#patients").empty();
   var lname = $("#lname").val();

     var model = {
         LastName: lname
     };
    $.ajax({
        url: '@Url.Action("ResultOfSearch", "PatientDatabase")',
        contentType: 'application/json; charset=utf-8',
        data: JSON.stringify(model),
        type: 'POST',
        dataType: 'json',
        processData: false,
        success: function(data) {
            var list = data;

            //alert(list);
            var listnumber = 1;
            for (var i = 0; i <= list.length - 1; i++) {
                var arrow  = '@Url.Content("~/images/doc-50.png")';
                var patientsList = ' <td class="point">' +
                    (i+1) +
                     '</td>' +
                    '<td class="title"> ' +
                    list[i].dateOfBirthday +
                    '</td>' +
                    '<td class="title"> ' +
                    list[i].firstName +
                    '</td>' + '<td>' + '</td>'
                    + '<td>' + '</td>'
                    + '<td>' + '</td>'
                    + '<td style="text-align:end;>' + arrow + '</td>';
                $("#patients").append('<tr>' + patientsList + '</tr>');
            };
        }
    });
});

在这一行我尝试显示图片

+ '<td style="text-align:end;>' + arrow + '</td>';

图像在箭头值中 var arrow = '@Url.Content("~/images/doc-50.png")';

但是没有显示。我在控制台中没有与图像相关的错误。

我的代码有什么问题?

您必须在 td 中使用图片标签,然后使用 arrow 作为图片的 src 属性,因为 @Url.Content 在您希望使用时使用为您站点上的任何文件或资源解析 url,您将传递给它相对路径,它 returns 是文件的应用程序绝对路径。

喜欢下面

'<td style="text-align:end;"><img src=' + arrow + '/></td>';

顺便问一下,您使用的是哪个版本的 .NET MVC?对于 mvc 4 及更高版本,您可以直接在图像中使用 relative url 作为 src="~/images/doc-50.png"