私は持っていdojox.grid.DataGrid
ます。この例では、一連の値が表示され、最後の 2 つの列が埋められています。これらの列は、 のプロパティをbuttons
使用してデータベースから取得されたデータに従って動的に作成されます。今、私は自分のグリッドをうまく取得しています。ボタンも問題なく出来上がりました。私が今しなければならないことは、そのボタン クリック イベントで特定のボタンをクリックすると、その URL のクエリ文字列パラメーターとして渡される特定の値 (A) を持つ新しい URL にリダイレクトすることです。そして、ページを更新したくありません。ボタンをクリックすると、他の JSP ページでアクションが実行され、メッセージが表示されます。formatter
gridStruture
alert("Action is being performed")
データ グリッド用にコーディングした Java スクリプト コード ::
<script type="text/javascript">
function getInfoFromServer(){
$.get("http://localhost:8080/2_8_2012/jsp/GetJson.jsp?random=" + new Date().getTime(), function (result) {
success:postToPage(result),
alert('Load was performed.');
},"json");
}
function postToPage(data){
alert(data);
var storedata = {
identifier:"ActID",
items: data
};
alert(storedata);
var store1 = new dojo.data.ItemFileWriteStore({data: storedata}) ;
var gridStructure =[[
{ field: "ActID",
name: "Activity ID",
classes:"firstName"
},
{
field: "Assigned To",
name: "Assigned To",
classes: "firstName"
},
{ field: "Activity Type",
name: "Activity Type",
classes:"firstName"
},
{
field: "Status",
name: "Status",
classes: "firstName"
},
{
field: "Assigned Date",
name: "Assigned Date",
classes: "firstName"
},
{
field: "Assigned Time",
name: "Assigned Time",
classes: "firstName"
},
{
field: "Email",
name: "Send Mail",
formatter: sendmail,
classes: "firstName"
},
{
field: "ActID",
name: "Delete",
formatter: deleteact,
classes: "firstName"
}
]
];
//var grid = dijit.byId("gridDiv");
//grid.setStore(store1);
var grid = new dojox.grid.DataGrid({
store: store1,
structure: gridStructure,
rowSelector: '30px',
selectionMode: "single",
autoHeight:true,
columnReordering:true
},'gridDiv');
grid.startup();
dojo.connect(grid, "onRowClick", grid, function(){
var items = grid.selection.getSelected();
dojo.forEach(items, function(item){
var v = grid.store.getValue(item, "ActID");
getdetailsfordialog(v);
function showDialog() {
dojo.require('dijit.Tooltip');
dijit.byId("terms").show();
}
showDialog();
}, grid);
});
}
function sendmail(item) {
alert(item);
return "<button onclick=http://localhost:8080/2_8_2012/jsp/SendMailReminder.jsp?Send Mail="+item+"'\">Send Mail</button>";
}
function deleteact(item) {
alert(item);
return "<button onclick=http://localhost:8080/2_8_2012/jsp/DeleteActivity.jsp?Activity ID="+item+"'\">Delete</button>";
}
</script>
呼び出しを使用してグリッド データを取得して$.get
います。上記のコード フィールドEmail
とは、 で呼び出されるActID
たびに実際に作成されるボタンsendmail
です。グリッドが表示されます。また、両方の関数の値が右に出てきて、それぞれの値があります。のように、私は取得中および取得中のように、特定の(列のボタン)私のページにそれが欲しいdeleteact
formatter
alert(item)
alert(item)
Delete
ActID
alert(item)
sendmail
"shan@gmail.com"
button click
Sendmail
http://localhost:8080/2_8_2012/jsp/SendMailReminder.jsp?Send Mail="+item+"'
このページのコラムbutton click
でDelete
http://localhost:8080/2_8_2012/jsp/DeleteActivity.jsp?Activity ID="+item+"'\"
データベースから取得されたアイテムの値で開きます。rowClick
uボタンRowclick
をクリックすると、ボタンクリックイベントの代わりにイベントが発生するため、問題を引き起こしているイベントも適用しました。これを行う方法。グリッド上の各ボタンにクリックイベントを適用することを考えました。しかし、私が知らないIDがあります。これについて私を助けてください。ありがとう..