下面是POST
我用来向 ASP MVC3 视图返回一些信息的 Ajax 变量。但是,我无法使.dialg()
弹出功能正常工作。现在您单击调用的图标,GetProgramDetails(pgmname)
没有任何反应。第一次使用 Ajax,所以任何建议都将不胜感激。谢谢!
<script src="http://code.jquery.com/jquery-1.8.3.js" type="text/javascript"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js" type="text/javascript"></script>
<script type="text/javascript">
function GetProgramDetails(pgmname) {
var request = $.ajax({
type: 'POST',
url: '/BatchPrograms/PopDetails',
data: { programName: pgmname },
dataType: 'html'
});
request.done(function (data) {
$('#data').dialog();
});
</script>
编辑
我已经更新了request.done
函数以包含一个简单alert
的代码来查看代码是否被调用。用 Chrome 的调试器单步调试后,我看到里面的代码被完全跳过了。
request.done(function (data) {
alert("HERE!");
$('#programExplanation').html(data);
});
第二次编辑
这是 ajax 从中返回值的控制器代码:
[HttpPost]
public string PopDetails(string programName)
{
BatchPrograms batchprograms = db.BatchPrograms.Find(programName);
if (batchprograms == null) return string.Empty;
StringBuilder s = new StringBuilder();
s.Append(batchprograms.ProgramName + " - " + batchprograms.ShortDescription);
s.Append("<br />Job Names: " + batchprograms.PrdJobName + ", " + batchprograms.QuaJobName );
s.Append("<br /> " + batchprograms.Description);
return s.ToString();
}