簡體   English   中英

Jqgrid單擊自定義編輯按鈕打開另一頁

[英]Jqgrid Open another page on clicking a custom edit button

我有一個JQGrid,每行都有一個按鈕,單擊該按鈕必須打開一個小的對話框,其中包含edit.jsp頁面的窗口。 我試過使用

$("#list").on("click", "#apri", function(){                 
            var id =sessionStorage.getItem("idProdotto");
            $("#list").jqGrid('editGridRow', id, {height:280,url:"http://localhost:8080/SaGE2/prodotti/edit" ,reloadAfterSubmit:false});                
        });

但是該URL被完全忽略了,因為沒有使用URL的情況下使用它是沒有問題的,因為使用editGridRow打開的普通對話框具有輸入框,但不會加載按鈕所在行的值。

我將發布按鈕的格式化程序,因為在這里您可以看到sessionStorage的用法

function bottone (cellvalue, options, rowObject)
        {          
           return "<div style='margin-bottom: 5px; margin-top: 5px;'>" +  
           "<button id='apri' onclick="+sessionStorage.setItem("idProdotto", rowObject.id)+"> Apri </button></div>";

        }

您永遠不應將相同的id值放在頁面上一個元素上(對於所有按鈕,請參閱id='apri' )。

在我看來,您應該只使用預定義的formatter: "actions"並使用formatoptions: { editformbutton: true }選項。 參見演示示例。 可以根據editGridRow的版本和所使用的fork來指定editGridRow其他選項。 如果使用免費的jqGrid,則可以在formEditing參數內指定所有選項。 有關更多詳細信息,請參見Wiki文章 如果使用的是舊版本的jqGrid,則可以使用formatoptionseditOptions屬性內的選項(請參閱文檔 )。

免費的jqGrid允許您在格式化程序操作中創建自定義按鈕。 看到答案

如果您確實需要使用自定義格式化程序,那么我建議您閱讀答案 答案 答案顯示了beforeSelectRow回調的用法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM