1

我有一个部分视图,它返回一个列表项的 HTML 块,这些列表项通过 AJAX 调用附加到无序列表上。这一切都很好。

但是,一旦我从 AJAX 调用收到 HTML,我希望能够通过 JQuery 在每个列表项上设置一些属性。为了做到这一点,我假设我需要以 JsonResult 而不是 ActionResult 的形式接收 AJAX 回调的结果。不幸的是,我想继续使用我用来呈现 HTML 的 ASCX,因为它包含相当多的格式化数据。

是否可以呈现部分视图,然后将其转换为 AJAX 客户端的 JsonResult 或者我应该考虑其他方法?

非常感谢任何建议。

谢谢!

4

1 回答 1

4

您实际上并不需要 JsonResult。作为 ActionResult 的部分检索一些 xml/html 对吗?然后你可以使用 jquery 来解析它并像这样查询它:

function success(result) {
    var html = $(result); //this creates a jquery object out of your result html
    $("ul li", html); //this gets you all the list items in context of the resulting html
}

此外,如果您的结果只是一堆lis 那么您可以这样做:

function success(result) {
    var lis = $(result);
    lis.each(function() { $(this).append(" testing"); });
    $("#yourUl").append(lis);
}

这可以通过链接来简化,但我让它更冗长一些,所以更容易理解

于 2009-08-25T21:04:10.627 回答