【发布时间】:2016-04-11 20:46:42
【问题描述】:
我正在开发一个 MVC 应用程序,尝试使用来自服务器的数据填充引导模式表单,为此我尝试执行以下操作:
1) 我加载了一个包含多个 ID 的网格,每个 ID 都有一个 javascript onclick 函数。
2) 函数获取ID号,并向服务器发起ajax请求以获取相关数据和ID作为参数。
3) 生成的 JSON 应该显示在模态正文中。
到目前为止,我已经让第 1 项和第 2 项工作,但我似乎无法让模态表单显示我从服务器检索的数据。我尝试将 $.getJSON 更改为 $.ajax,并使用段落或标题更改 div 标记(例如,假设一个字符串就可以了),但没有运气。我什至尝试用alert替换div填充方法,只是为了查看结果json,但这也没有用。
这是我的代码:
视图(仅模态部分):
<div id="modalZoomOperaciones" class="modal fade" role="dialog" tabindex="-1" data-url='@Url.Action("OperacionDetalle")'>
<div id="contenido">
<div class="modal-content">
<div class=" modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">@Global.Details</h4>
</div>
<div class="modal-body">
<div id="response"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">@Global.BackToList</button>
</div>
</div>
</div>
JS函数:
function showDetails(oper_numero) {
var url = $('#modalZoomOperaciones').data('url');
$.getJSON({
url: url,
data: { operacion: oper_numero },
success: function(data){
$("#response").html(data);
}
});
$("#modalZoomOperaciones").modal({ backdrop: "static" });
}
控制器(我知道它有不必要的代码和冗余。这是一个测试环境,而不是实际的开发站点):
public JsonResult OperacionDetalle(int operacion)
{
IEnumerable<OperacionesTestViewModel> datos = UnitOfWork.ExecuteSpScript.spOperacionesDetalleTest(operacion);
OperacionesTestViewModel datos1 = datos.FirstOrDefault();
return Json(datos1);
}
任何帮助将不胜感激。
【问题讨论】:
-
成功回调是否被执行?尝试添加一个 console.log() 以查看它是否被调用。如果它确实被调用,则将数据输出到控制台。
-
非常感谢。问题涉及 MVC 安全性,我获得了数据,但无法将其带到客户端。