微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jqgrid:为什么我会收到“ eData”而不是id属性值?

如何解决jqgrid:为什么我会收到“ eData”而不是id属性值?

| jqgrid片段:
gridComplete: function(){

    var ids = jQuery(\"#breed_list\").jqgrid(\'getDataIDs\');
    for(var i=0;i < ids.length;i++)
    {
        var cl = ids[i];
        ed = \"<img src=\"../images/edit.png\" alt=\"Edit\" onclick=\"jQuery(\'#breed_list\').editRow(\'\"+cl+\"\');\" />\";
        de = \"<img class=\"del_row\" src=\"../images/delete.png\" alt=\"Delete\" />\";
        ce = \"<input class=\"del_row\" type=\'button\' onclick=\"deleteRow()\" />\";
        jQuery(\"#breed_list\").jqgrid(\'setRowData\',ids[i],{act:ed+de+ce});
    }

    $(this).mouSEOver(function() {
        var valId = $(\'.ui-state-hover\').attr(\"id\");
        jQuery(\"#breed_list\").setSelection(valId,false);
        alert(valId);
        //deleteRow(valId)
    });
自定义功能代码
function deleteRow(){

    // Get the currently selected row
    var toDelete = $(\"#breed_list\").jqgrid(\'getGridParam\',\'selrow\');

    // You\'ll get a pop-up confirmation dialog,and if you say yes,// it will call \"delete.PHP\" on your server.
    $(\"#breed_list\").jqgrid(
        \'delGridRow\',toDelete,{
               url: \'delete.PHP\',reloadAfterSubmit:false
          }
    );
    //alert(toDelete);

}
当未执行delGridRow时,该代码自动正确选择悬停的单元格。当我单击“操作”列下的按钮时,它将调用执行delGridRow的deleteRow()函数。当我单击取消时,删除表单关闭。现在,当我悬停一个单元格时,它不会自动选择当前悬停的单元格。为了调试此问题,我在.mouSEOver函数中放置了alert(valId),该函数返回eData而不是id属性值。只要不执行deleteRow函数,alert(valId)就会发出id属性值的警报。为什么eData应该返回id属性值时设置为valId?如何解决此问题? 编辑 显然,我一直在努力解决这个问题。我回到了基本的grid和gridComplete。 jqgrid片段:
de = \"<input style=\'height:22px;width:20px;\' type=\'button\' value=\'d\' onclick=\\\"deleteRow(\'\"+cl+\"\');\\\" />\";
deleteRow功能代码
function deleteRow(valId){

    jQuery(\"#breed_list\").setSelection(valId,false);

    // You\'ll get a pop-up confirmation dialog,valId,{ 
               url: \'delete.PHP\',reloadAfterSubmit:false
          }
    );
    //alert(toDelete);

}
现在可以像魅力一样工作,但是我仍然想像以前说明的那样合并鼠标悬停功能。     

解决方法

显然,我一直在努力解决这个问题。我回到了基本的grid和gridComplete。 jQgrid片段:
    de = \"<input style=\'height:22px;width:20px;\' type=\'button\' value=\'d\' onclick=\\\"deleteRow(\'\"+cl+\"\');\\\" />\";

deleteRow function code:  

    function deleteRow(valId){

        jQuery(\"#breed_list\").setSelection(valId,false);

        // You\'ll get a pop-up confirmation dialog,and if you say yes,// it will call \"delete.php\" on your server.
        $(\"#breed_list\").jqGrid(
            \'delGridRow\',valId,{ 
                   url: \'delete.php\',reloadAfterSubmit:false
              }
        );
        //alert(toDelete);

    }
现在可以像魅力一样工作,但是我仍然想像以前说明的那样合并鼠标悬停功能。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。