如何将Item.Id附加到JQuery.Modal Dialog MVC 3

时间:2012-09-11 01:40:48

标签: jquery asp.net-mvc-3 modal-dialog

我正在使用 Matt Hidinger 的示例来使用Jquery创建模态表单。

我试过像

这样的东西
//Javascript click event
$("#Edit").click(function () {
        var grid = jQuery('#Tareas');
        var selId = grid.jqGrid('getGridParam', 'selrow');
        var myCellData = grid.jqGrid('getCell', selId, 'TareaId');
        if(myCellData=="") {
            alert("Select Task to Edit");
        } else {
        location.href = '/Task/Edit/'+myCellData;
            }
    });

<button id="Edit" class="openDialog" data-dialog-id="editDialog" data-dialog-Title="Edit" title="editDialog" style="border: 1; background: transparent">
    <img src="@Url.Content("~/Content/Detail.png")" />
</button>

但我无法捕获点击事件。任何人都可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

您正在引用#Edit。这意味着JQuery正在通过DOM查找具有编辑ID的对象。它找不到它,因为您没有将ID的{​​{1}}设置为“编辑”。

试试这个:

ActionLink

答案 1 :(得分:0)

因为不仅需要发送行的id,还需要根据用户配置文件显示编辑,我决定实现一个动作列。

$.ActionsFormatter = function(cellvalue, options, rowObject) {
// column 10 contains true or false from de user profile action
// column 1 contains the item.id
var c = rowObject[10];
if(c) {
     var src = '@Url.Content("~/Content/")' + 'Edit_16.png';
     return "<a class='openDialog' data-dialog-id='editDialog' data-dialog-Title='Edit Task' title='editDialog' href ='@Url.Action("Edit")'"+rowObject[1]+"><img title='edit' src='" + src + "' alt='edit' title='edit' /> </a>";
     } 
     else {
           return "";
     }
    };