jquery ui弹出窗口MVC 3未启动
开发ASP.NET MVC 3应用程序(我的第一个)时,jQuery遇到了一些问题,因为我以前从未使用过它。我试图在模式对话框中打开特定搜索结果的详细信息 相关剃须刀代码:jquery ui弹出窗口MVC 3未启动,jquery,asp.net-mvc-3,razor,Jquery,Asp.net Mvc 3,Razor,开发ASP.NET MVC 3应用程序(我的第一个)时,jQuery遇到了一些问题,因为我以前从未使用过它。我试图在模式对话框中打开特定搜索结果的详细信息 相关剃须刀代码: @foreach (var item in Model.claims) { <tr> <td>@Html.ActionLink(item.CLAIMMASTID.Substring(Math.Max(0,item.CLAIMMASTID.Length-1
@foreach (var item in Model.claims)
{
<tr>
<td>@Html.ActionLink(item.CLAIMMASTID.Substring(Math.Max(0,item.CLAIMMASTID.Length-1)), "ClaimDetail", new {@id=item.CLAIMMASTID}, new {@class="ClaimsDetail"})</td>
</tr>
}
到目前为止一切都很好,是吗?我就是这么想的。因此,我的jQuery脚本看起来就是这样,我认为问题就出在这里:
$(function () {
$('#ClaimsDialog').dialog({
autoOpen: false,
width: 800,
resizable: true,
modal: true
});
$('.ClaimsDetail').live("click", function () {
var target = $(this).attr('href');
$.get(target, function (result) {
('#ClaimsDialog').html(result);
('#ClaimsDialog').dialog({
});
});
return false;
});
替换
$.get(target, function (result) {
('#ClaimsDialog').html(result);
('#ClaimsDialog').dialog({
});
});
与
可能有助于在VS2010中调试代码,并在代码到达相关行时查看其内容。在IE中启用调试(工具->internet选项->高级,取消选中“禁用脚本调试”),运行解决方案并在IE中打开网页。今天调用valid()方法时,我不得不这样做,结果发现我缺少一个脚本引用。同样正如DanielB所说,live()从1.43开始就被弃用了,默认情况下MVC3使用的版本至少是1.5(1.8是jQueryUI版本,而不是jQuery!),但仍然没有做任何事情。让我看看firebug告诉我发生了什么?是否执行ajax调用?您正在使用哪个版本的jquery
live()
从1.4.3开始就被弃用。firebug称,调用已执行。然后右键单击“在新选项卡/窗口中打开”这两个选项都可以工作。1.8.11然后您必须一步一步地调试javascript。要提供更好的提示,只需提供很少的信息。
$.get(target, function (result) {
('#ClaimsDialog').html(result);
('#ClaimsDialog').dialog({
});
});
$.get(target, function (result) {
$('#ClaimsDialog').html(result).dialog('open');
});