1

struts2-jquery グリッドで編集ダイアログを開くときに beforeShowForm イベントを使用する方法を探しています。編集ダイアログにカスタム フィールドを追加できるようにしたいと考えています。

<sjg:grid
        altRows="false"
        id="gridtable"
        dataType="json"
        editurl="%{editurl}"
        filter="true"
        filterOptions="{stringResult:true}"
        gridModel="gridModel"
        height="600"
        href="%{remoteurl}"         
        loadonce="true"
        navigator="true"
        navigatorAdd="%{editPermission}"
        navigatorAddOptions="{reloadAfterSubmit:true,addCaption:'Add Record'}" 
        navigatorDelete="false"
        navigatorEdit="%{editPermission}"
        navigatorRefresh="true"
        navigatorSearch="false"
        onCompleteTopics="loadComplete"
        onSelectRowTopics="rowselect"
        pager="true"
        pagerButtons="true"
        rowList="25,50,100"
        rowNum="25"
        rownumbers="true"
    >

ただし、sjg タグで beforeShowForm イベントを使用する方法を理解するのに問題があります。私は何日も解決策を探してきましたが、それらはすべて、特にsjgタグではなく、通常のjqGridを使用した場合のみのようです。ほとんどの例は jqGrid wiki を参照しているようですが、そのイベントにアクセスする方法がわかりません。sjg タグ内の編集ボタンの beforeShowForm に関数を割り当てる例を教えてください。

ありがとう

4

1 に答える 1

2

私自身はstruts2を使用していません。グリッドのIDは だと思います"gridtable"callback の代わりに jQuery イベントを使用することをお勧めします。jQuery.bindを使用するだけです。ほとんどのコールバックには、バージョン 4.3.2 以降の jqGrid に存在する対応する jQuery イベントがあります。jQuery イベントの使用方法の最も大きな違いは、追加の最初のパラメーターを追加することです。この場合、あまり多くの情報は得られません。たとえば、使用できます

$("#gridtable").bind("jqGridAddEditBeforeShowForm", function (e, $form, oper) {
    alert("In jqGridAddEditBeforeShowForm");
});

jQuery イベントの使用法に見られる他のほとんどのソリューションを変換できる方法です。

于 2015-06-12T15:27:52.097 に答える