我正在使用MVC 3剃须刀开发一个网站。在哪里 我有以下情况:
控制器方法:
public ActionResult MyControllerMethod(int parameter){
''go to bd a do some staff
IList<My_Custom> datafromDB = MyService.GetData(parameter);
'returns to my string tuped view
return View(datafromDB );
}
我使用javascript的强类型视图:
@model IList
<script type="text/javascript">
function getData()
{
var parameter = document.getElementById('myParamater').value;
$.get('/MyController/MyControllerMethod/' + parameter, function (data) {
loadData();
}
);
}
function loadData()
{
clearData();
datos = @Html.Raw(Json.Encode(Model));
//do some stuff with datos
}
</script>
对控制器的javascript调用工作正常,但我的问题是字符串类型视图看起来没有为@model获取新值,所以继续加载相同的信息。
虽然我已经调试了accion控制器并且每次都返回不同的数据。 那么有什么方法可以刷新字符串类型视图的Model值。
我还试图获取该行的数据值
$。get('/ MyController / MyControllerMethod /'+ parameter,function(data){
但我没有成功做到这一点。
我将不胜感激任何帮助或暗示。
感谢您阅读我的帖子
答案 0 :(得分:0)
您的行动返回视图,这就是无效的原因。您的代码如何工作:
html
接收json
(所有这些数据都在内存中),
然后从第一步开始访问json
它必须如何运作:
Json
)data
public ActionResult YourJsonAction(int parameter) { IList datafromDB = MyService.GetData(parameter); return Json(datafromDB, JsonRequestBehavior.AllowGet); } function getData() { var parameter = $('#myParamater').val(); $.get('/MyController/YourJsonAction/' + parameter, function (data) { //data from YourJsonAction }); }