从控制器返回PartialView和Javascript。
从控制器返回PartialView和Javascript。
我看到有一个问题在这里,但是没有确定的答案。有人有任何关于如何返回带有Javascript或JSON的PartialView的想法吗?我正在进行一个AJAX post,在成功后它渲染PartialView,但是需要运行一些Javascript或检查JSON结果。
问题的出现原因:
在这个问题中,控制器返回的是HTML,但是需要同时返回一个JSON对象。通过使用jQuery AJAX进行POST请求时,控制器返回的是HTML,而不是期望的JSON对象。因此,需要找到一种方法来使控制器返回JSON对象。
解决方法:
在这个问题中,有几种解决方法被讨论和提出。其中一种方法是将返回的HTML结果序列化为JSON对象,然后再将其返回给浏览器。另一种方法是使用AJAX请求获取HTML结果,而不是JSON。然而,这些解决方法都没有得到完全的解决。
在这个问题中,控制器返回的是HTML,但是需要同时返回一个JSON对象。通过使用jQuery AJAX进行POST请求时,控制器返回的是HTML,而不是期望的JSON对象。有人建议将返回的HTML结果序列化为JSON对象,然后再返回给浏览器。但是,也有人认为这种做法没有必要,觉得直接返回HTML结果更加简单和直接。
在讨论中,某些情况下了使用AJAX请求获取HTML结果的方法,但是这个方法并没有得到完全的解决。同时,也某些情况下了在控制器中返回JSON对象的方法,但是这个方法也没有得到完全的解决。
问题的出现是因为控制器返回的是HTML,但是需要同时返回一个JSON对象。解决方法有多种,但是都没有得到完全的解决。
这段代码是一个用于从控制器中返回部分视图和Javascript的方法。下面将对问题出现的原因和解决方法进行整理。
问题的出现原因:
在这段代码中,问题的出现原因可能是需要在控制器中返回部分视图和Javascript,但是在代码中没有找到相应的逻辑来实现这个需求。
解决方法:
要解决这个问题,可以按照以下步骤进行操作:
1. 创建一个用于返回部分视图和Javascript的方法。
2. 在方法中创建一个ViewDataDictionary对象,并将传入的viewData参数赋值给它。
3. 创建一个ViewPage对象,并将ViewData属性设置为之前创建的ViewDataDictionary对象。
4. 将传入的model参数赋值给ViewData.Model属性。
5. 创建一个ViewContext对象,并将ViewContext属性设置为之前创建的ViewContext对象。
6. 创建一个UrlHelper对象,并将传入的viewContext参数赋值给它。
7. 使用LoadControl方法加载指定的控件。
8. 将加载的控件添加到ViewPage的Controls集合中。
9. 使用StringBuilder和StringWriter创建一个字符串缓冲区。
10. 使用HtmlTextWriter将ViewPage渲染到之前创建的字符串缓冲区中。
11. 将字符串缓冲区转换为字符串并返回。
这样,就可以在控制器中使用这个方法来返回部分视图和Javascript了。
原文链接:http://thriftybliss.spaces.live.com/blog/cns!58DA805F37F31F20!170.entry