0
我使用的是struts 2.3.7,struts2-jquery-grid-plugin-3.5.0和hibernate 3.6。 我想在ajax調用後重新加載jqgrid。如何實現一個jqgrid上的ajax調用成功
我有一個jDialog框有三個按鈕,點擊按鈕後,我們希望執行一些操作,如Ajax調用之後,我必須重新加載jqgrid如何實現這一點。
我的JDialog
<sj:dialog
id="mybuttondialog"
buttons="{
'Approove':function() { approoveButton(); },
'Cancel':function() { cancelButton(); },
'Deny':function() { denyButton(); }
}"
autoOpen="false"
modal="true"
title="Assign Issues"
width="375"
resizable="false"
draggable="true"
closeTopics="closeThisDialog"
>
我的jqGrid是
<div id="targetDivToRefresh">
<sjg:grid
id="gridtable"
caption="Issue-Summary"
dataType="json"
href="%{remoteurl}"
pager="true"
gridModel="gridModel"
rowList="10,15,20"
rowNum="15"
rownumbers="true"
reloadTopics="reloadGrid"
>
<sjg:gridColumn name="issue_id" id="issueId" index="id" title="Issue-ID" formatter="integer" sortable="false"/>
<sjg:gridColumn name="issue_description" index="id" title="Issue-Details" sortable="false"/>
<sjg:gridColumn name="issue_raised_date" index="date" title="Issue-Date" formatter="date" sortable="false"/>
<sjg:gridColumn name="issue_id" index="issues" title="Action" sortable="false" formatter="formatLink"/>
<sjg:gridColumn name="assigned" index="assigned" title="Assigned To" sortable="false"/>
</sjg:grid>
</div>
單擊列「阿克頓」的JDialog的盒子打開,我必須點擊任何按鈕,即Approove,拒絕後按鈕來執行一些操作。完成ajax調用後,我必須重新加載jqgrid。我使用作爲的CustomFormatter
function formatLink(cellvalue, options, rowObject) {
var issueId=rowObject.issue_id;
return "<a href='#' onClick='javascript:openDialog("+issueId+")'>" + issueId+ "</a>";
}
function openDialog(issue) {
global_id=issue;
$("#mybuttondialog").dialog().text('Your are going to assign Issue-Id:' + issue);
$("#mybuttondialog").dialog('open');
}
但是我已經試過這樣的事情重新加載網:
$("#gridtable").trigger("reloadGrid"); // where #gridtable is my jqGrid idName
請幫我,我使用的jqGrid第一次。
Edited Section
其實ajax調用是在演示階段,但代碼如下。
function approoveButton()
{
$("#mybuttondialog").load("<s:property value='issueTrackerUrl'/>?id="+global_id);
}
這裏issueTrackerUrl是一個使ajax調用成功的動作。 在這裏,我重新加載jqGrid的
function reload()
{
$("#gridtable").trigger("reloadGrid");
}
請問你給我舉個例子,我試過了上面的代碼,但是上面的代碼執行後,瀏覽器每次都崩潰了 –
你能告訴我你的ajax函數嗎? – muthu
請檢查編輯部分我的問題 –