我有一个jsp页面,我在Struts2 jquery网格中显示我的书籍细节。 现在我想调用一个动作并将rowid作为参数传递给动作类,点击我的Jquery网格中的一行。我还想在调用我的动作后指定我的div的目标进行刷新。
这些东西我通过<sj:submit target="targetDivToRefresh" formId="form2" button="true"/>
很了解但我不知道如何执行这些任务&#34;当用户从我的struts2 jquery网格中点击一行时#34;。
请帮我解决这个问题。
<sjg:grid
id="bookgrid"
editurl="%{bookediturl}"
navigator="true"
editinline="true"
navigatorSearch="false"
autowidth="false"
width= "1550"
viewrecords="true"
navigatorRefresh="true"
navigatorDelete="true">
<sjg:gridColumn name="id" index="locationId" title="ID" formatter="integer" sortable="false" key="true"
search="false" editable="true" hidden="true" />
<sjg:gridColumn name="authLastname" index="authLastname" title="AuthorLastname" sortable="true" search="true" editrules="{required: true}"
editable="true" edittype="text" />
</sjg:grid>
答案 0 :(得分:2)
试试这个:
$(function(){
$.subscribe('rowselect', function(event,data) {
alert(event.originalEvent.authLastname);
$("#targetDivToRefresh").load('your-struts2-action');
});
});
<强>更新
$("#targetDivToRefresh").load('your-struts2-action');
参考链接:Struts2 jquery plugin showcase
请确保触发此事件,如果您点击一行,我添加了测试代码alert()
以确保在事件期间调用它。还有一件事,我必须告诉您,您必须使用selectrow
<sj:grid>
代码中注册onSelectRowTopics="rowselect"
个事件
更新
$("#targetDivToRefresh").load("<s:url value="your-struts2-action"/>"+"?id="+event.originalEvent.id);