0

我有一个HtmlGenericControl

HtmlGenericControl a = new HtmlGenericControl("a");

    a.Attributes.Add("href", "test.aspx");

    a.InnerText = "foo";

我想进行 ajax 调用以返回此对象并将其呈现在页面上。我尝试将其序列化为 c# 中的 json 对象并将其传递给页面,但不知道如何将其反序列化为 jquery 中的 html 控件。

另外,如果我尝试的是不可能的,有没有办法将其HtmlGenericControl转换为字符串?

4

1 回答 1

1

我不会尝试将 HtmlGenericControl 转换为字符串,而是使用对方法的 jQuery ajax 调用从方法中检索 href 属性值(在您的示例中为“text.aspx”)(将“href”作为 JSON 值返回)和然后使用 jQuery 使用 JavaScript document.write()、jQuery.html() 或 jQuery.append() 方法之一来呈现标签,将来自 ajax 调用 href 属性的 JSON 值合并到插入的字符串中。

$.getJSON('/home/getHref', function(data) {
   var $newAnchor = $('<a href="' + data.href + '"/>')
   $("my_div").append($newAnchor); 
}

这是针对 WebForms 网站还是 MVC 网站?如果您使用的是 MVC,那么我的解决方案就是这样做的正确方法。

于 2013-07-08T17:05:25.497 回答