Javascript 剑道网格超链接
我有一个4列的表。[ID、名字、姓氏、地址]。我正在kendogrid上显示3个克隆[ID、FIRSTNAME、LASTNAME]。我想做的是点击名字,它会在一个新窗口上显示地址,但我不明白。我试着获取名字的链接,但不知道以后如何继续。我不熟悉这个概念。下面是我的代码。我是否需要为地址或其工作方式创建剑道网格。我想要的是ID上的超链接以显示地址 谢谢Javascript 剑道网格超链接,javascript,asp.net,kendo-ui,kendo-grid,Javascript,Asp.net,Kendo Ui,Kendo Grid,我有一个4列的表。[ID、名字、姓氏、地址]。我正在kendogrid上显示3个克隆[ID、FIRSTNAME、LASTNAME]。我想做的是点击名字,它会在一个新窗口上显示地址,但我不明白。我试着获取名字的链接,但不知道以后如何继续。我不熟悉这个概念。下面是我的代码。我是否需要为地址或其工作方式创建剑道网格。我想要的是ID上的超链接以显示地址 谢谢 Grid = $("#grid").kendoGrid({ dataSource:gridDS,
Grid = $("#grid").kendoGrid({
dataSource:gridDS,
height: 450,
pageable: false,
sortable: true,
binding: true
columns: [
{
field: "ID",
title: "ID",
headerTemplate: '<span class="tbl-hdr">ID</span>',
attributes: {
style: "vertical-align: top; text-align: left; font-weight:bold; font-size: 12px"
},
width: 85
},
{
field: "FIRSTNAME",
title: "FIRSTNAME",
headerTemplate: '<span class="tbl-hdr">FIRSTNAME</span>',
template: '<a href="#=FIRSTNAME#">#=ADDRESS#</a>',
attributes: {
style: "vertical-align: top; text-align: left; font-weight:bold; font-size: 12px"
},
width: 25
},
{
field: "LASTNAME",
title: "LASTNAME",
headerTemplate: '<span class="tbl-hdr">LASTNAME</span>',
attributes: {
style: "vertical-align: top; text-align: left; font-weight:bold; font-size: 12px"
},
width: 85
},
{
command: [
{
name: "destroy",
template: "<div class='k-button delete-btn'><span class='k-icon k-delete'></span></div>",
text: "remove"
},
{
text: "Edit",
template: "<div class='k-button edit-btn'><span class='k-icon k-edit'></span></div>",
},
],
width: 40,
attributes: {
style: "vertical-align: top; text-align: center;"
}
},
],
editable: "popup"
}).data('kendoGrid');
}
Grid=$(“#Grid”).kendoGrid({
数据源:gridDS,
身高:450,
可分页:false,
可排序:是的,
绑定:正确
栏目:[
{
字段:“ID”,
标题:“身份证”,
headerTemplate:“ID”,
属性:{
样式:“垂直对齐:顶部;文本对齐:左侧;字体大小:粗体;字体大小:12px”
},
宽度:85
},
{
字段:“名字”,
标题:“名字”,
headerTemplate:“名字”,
模板:“”,
属性:{
样式:“垂直对齐:顶部;文本对齐:左侧;字体大小:粗体;字体大小:12px”
},
宽度:25
},
{
字段:“姓氏”,
标题:“姓氏”,
headerTemplate:“姓氏”,
属性:{
样式:“垂直对齐:顶部;文本对齐:左侧;字体大小:粗体;字体大小:12px”
},
宽度:85
},
{
命令:[
{
名称:“摧毁”,
模板:“”,
正文:“删除”
},
{
文本:“编辑”,
模板:“”,
},
],
宽度:40,
属性:{
样式:“垂直对齐:顶部;文本对齐:中心;”
}
},
],
可编辑:“弹出窗口”
}).数据(“kendoGrid”);
}
我认为这不是剑道问题,主要是关于JS/jQuery的。我建议在网格上绑定一个事件,以从模板中的该链接获取所有单击事件。然后,您可以使用它的行数据获取单击的dataItem
.on("click", "a.name-link", function() {
var tr = $(this).closest("tr");
var dataItem = $("#grid").data("kendoGrid").dataItem(tr);
window.alert(dataItem.Address);
});
目前尚不清楚的是,您希望如何打开包含地址的新窗口。你的意思是:一个新的浏览器标签/窗口,或者在你的应用程序中有一个JS弹出窗口
如果需要新的浏览器选项卡/窗口,应使用将行id
传递给它,然后在此窗口中,必须再次点击数据库以显示信息。现在,如果你想在你的应用程序中弹出一个javascript窗口(例如),你可以使用之前检索到的dataItem
来填充它。信息已经存在。我认为这不是剑道问题,主要是关于JS/jQuery的。我建议在网格上绑定一个事件,以从模板中的该链接获取所有单击事件。然后,您可以使用它的行数据获取单击的dataItem
.on("click", "a.name-link", function() {
var tr = $(this).closest("tr");
var dataItem = $("#grid").data("kendoGrid").dataItem(tr);
window.alert(dataItem.Address);
});
目前尚不清楚的是,您希望如何打开包含地址的新窗口。你的意思是:一个新的浏览器标签/窗口,或者在你的应用程序中有一个JS弹出窗口
如果需要新的浏览器选项卡/窗口,应使用将行
id
传递给它,然后在此窗口中,必须再次点击数据库以显示信息。现在,如果你想在你的应用程序中弹出一个javascript窗口(例如),你可以使用之前检索到的dataItem
来填充它。信息已经存在。我更新了代码。您可以单击firstName查看地址
若你们想更进一步,你们可以点击地址按钮在弹出窗口中查看地址
剑道UI片段
a{
光标:指针;
文字装饰:下划线;
}
.k-grid-update{
显示:无;
}
#=名字#
#=地址#
$(“#网格”).kendoGrid({
栏目:[
{字段:“id”},
{字段:“firstName”,模板:kendo.template($(“#行模板”).html())},
{字段:“lastName”},
{命令:[{名称:“编辑”,文本:{编辑:“地址”,取消:“关闭”,更新:“关闭”}]
}
],
数据源:{
数据:[
{id:1,姓:“简”,姓:“Doe”,地址:“123街”},
{id:2,姓:“约翰”,姓:“Doe”,地址:“456街”}
],
模式:{
模型:{id:“id”}
}
},
可编辑:{
模式:“弹出”,
窗口:{title:'Address'},
模板:kendo.template($(“#弹出编辑器”).html()
}
});
功能显示(地址){
警报(地址);
}
我更新了代码。您可以单击firstName查看地址
若你们想更进一步,你们可以点击地址按钮在弹出窗口中查看地址
剑道UI片段
a{
光标:指针;
文字装饰:下划线;
}
.k-grid-update{