jqgrid's delGridRow не работает - PullRequest
3 голосов
/ 14 мая 2010

Я хочу иметь кнопку в каждой строке, чтобы удалить соответствующую строку. Поэтому я использовал примеры на демонстрационной странице, чтобы попытаться достичь этого.

Это работает для редактирования строки, но я также хочу иметь кнопку удаления.

Вот мой код

jQuery("#detFlex1").jqGrid({
    url: '<%= Html.Encode(ViewData["module"])%>/GetDetailList1',
    datatype: "json",
    altRows: true,
    mtype: 'POST',
    colNames: ['Inv No', 'Actions', '<%= RmdReqVendor.AccountName %>', '<%= RmdReqVendor.AccountNum %>'
                , '<%= RmdReqVendor.Valuta %>'
                , '<%= RmdReqVendor.Country %>'
                , '<%= RmdReqVendor.Branch %>'
                , '<%= RmdReqVendor.BankKey %>'
                , '<%= RmdReqVendor.Priority %>'],
    colModel: [
           { name: 'account_id', index: 'account_id', width: 55, hidden: true },
           { name: 'act', index: 'act', width: 55, sortable: false },
           { name: 'account_name', index: 'account_name', width: 150,editable:true,editoptions:{size:30,maxlength:30}, editrules:{required:true} },
           { name: 'account_num', index: 'account_num', width: 150,editable:true,editoptions:{size:18,maxlength:18}, editrules:{required:true, number:true} },
           { name: 'valuta', index: 'valuta', width: 90, editable: true,edittype:"select",editoptions:{value:"<%= JsHelper.CurrencyJsArray() %>"}, editrules:{required:true} },
           { name: 'country', index: 'country', width: 150, editable: true,edittype:"select",editoptions:{value:"<%= JsHelper.CountryJsArray() %>"}, editrules:{required:true} },
           { name: 'branch', index: 'branch', width: 150,editable:true,editoptions:{size:40,maxlength:40}, editrules:{required:true} },
           { name: 'bank_key', index: 'bank_key', width: 90,editable:true,editoptions:{size:15,maxlength:15}, editrules:{required:false} },
           { name: 'priority', index: 'priority', width: 90,editable:true,editoptions:{size:10,maxlength:10}, editrules:{required:true, number:true} }
       ],
    rowNum: 10,
    rowList: [10, 20, 30],
    pager: '#pagerFlex1',
    sortname: 'request_id',
    viewrecords: true,
    sortorder: "desc",
    caption: '<%= RmdReqVendor.BankAccountTitle %>',
    width: $('.body').width()-40,
    height: 180,
    shrinkToFit: false,
    gridComplete: function(){
        var ids = jQuery("#detFlex1").jqGrid('getDataIDs');
        for(var i=0;i < ids.length;i++){
            var cl = ids[i];
            be = "<button style='height:22px;width:20px;' type='button' title='Edit' onclick="jQuery('#detFlex1').jqGrid('editGridRow','"+cl+"',{top:top,left:left,width:420,height:220,reloadAfterSubmit:false,addedrow:'last',bSubmit:'Add' });" >E</button>";
            de = "<button style='height:22px;width:20px;' type='button' title='Delete' onclick="jQuery('#detFlex1').jqGrid('delGridRow','"+cl+"',{reloadAfterSubmit:false });" >D</button>";
            jQuery("#detFlex1").jqGrid('setRowData',ids[i],{act:be+de});
        }
    },
    editurl: "<%= Html.Encode(ViewData["module"])%>/SaveDetail1"

});
jQuery("#detFlex1").jqGrid('navGrid', '#pagerFlex1', { edit: false, add: false, del: false, search: false, refresh: false });

Кнопка редактирования работает замечательно, а кнопка удаления - нет.

Кнопка удаления при нажатии создает только серую маску на всей странице и не отображает диалоговое окно подтверждения удаления.

Что мне здесь не хватает?

1 Ответ

0 голосов
/ 14 мая 2010

разве вы не должны это делать?

        be = "<button style='height:22px;width:20px;' type='button' title='Edit' onclick=\"jQuery('#detFlex1').jqGrid('editGridRow','"+cl+"',{top:top,left:left,width:420,height:220,reloadAfterSubmit:false,addedrow:'last',bSubmit:'Add' });\" >E</button>";
        de = "<button style='height:22px;width:20px;' type='button' title='Delete' onclick=\"jQuery('#detFlex1').jqGrid('delGridRow','"+cl+"',{reloadAfterSubmit:false });\" >D</button>";

(обратная косая черта в qoutes до и после события onclick.)

Я скопировал ваш метод в мою jqgrid (я не удаляю в этой сетке нормально), и он сработал, если я поставил обратную косую черту Я получил диалоговое окно подтверждения удаления.

Но странно, что кнопка редактирования работает без этих обратных косых черт ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...