将 ID 号传递给 JQWidgets 中的自定义 url
Passing an ID number to a custom url in JQWidgets
我正在尝试使用 JQWidgets 库将 user_id 值传递给自定义 url 任何帮助。正在实际加载从数据库转换为 JSON 的数据。变量 "data" 是我的记录的样子。 user_id 值不显示为 url 的一部分。下面是我的代码
<div id='jqxWidget'>
<div id="jqxgrid"></div>
</div>
<script type="text/javascript">
$(document).ready(function ()
{
var data = [{user_id:100,user_name:"sam",first_name:"doe"}];
var source =
{
datatype: "json",
datafields:
[
{ name: 'user_id', type: 'string' },
{ name: 'user_name', type: 'string' },
{ name: 'first_name', type: 'string' },
{ name: 'action'}
],
id: 'user_id',
root: 'Rows',
};
var dataAdapter = new $.jqx.dataAdapter(source);
// create jqxgrid.
$("#jqxgrid").jqxGrid(
{
width: 1000,
height: 450,
theme: 'light',
source: dataAdapter,
selectionmode: 'multiplerowsextended',
sortable: true,
pageable: true,
pageSize: 20,
autoHeight: true,
filterable: true,
pagesizeoptions: ['20', '40', '80','200'],
altrows: true,
columns: [
{ text: 'User ID', datafield: 'user_id', width: 100 },
{ text: 'User Name', datafield: 'title', width: 70, cellsformat: 'yyyy-MM-dd'},
{ text: 'First Name', datafield: 'first_name', width: 150, cellsformat: 'F2', cellsalign: 'left' },
{ text: 'Action', datafield: 'action',cellsrenderer: renderer,width:130 }
]
});
});
var renderer = function (action) {
return '<span style="padding:5px;" >'+'<a href="update_user?id=data.user_id" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i>Update user</a>'+'</span>';
}
</script>
能否请您尝试以下操作:
1) 修改列定义以在 datafield
属性中传递 user_id
为:
{ text: 'Action', datafield: 'user_id',cellsrenderer: renderer,width:130 }
2) 现在修改renderer
函数如下,直接得到user_id
:
var renderer = function (user_id) {
return '<span style="padding:5px;" >'+'<a href="update_user?id='+user_id+'" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i>Update user</a>'+'</span>';
}
这段代码对我来说效果很好。谢谢
{ text: 'Action', datafield: 'ac', cellsrenderer: renderer, width:105 }
var renderer = function (row, columnfield, value, defaulthtml, columnproperties) {
var getrow = row;
var user_data = $("#jqxgrid").jqxGrid('getrowdata', getrow);
var user_id = user_data.user_id;
return '<span style="padding:10px;">'+'<a href="update_user?id='+user_id+'" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i> Update user</a>'+'</span>';
}
我正在尝试使用 JQWidgets 库将 user_id 值传递给自定义 url 任何帮助。正在实际加载从数据库转换为 JSON 的数据。变量 "data" 是我的记录的样子。 user_id 值不显示为 url 的一部分。下面是我的代码
<div id='jqxWidget'>
<div id="jqxgrid"></div>
</div>
<script type="text/javascript">
$(document).ready(function ()
{
var data = [{user_id:100,user_name:"sam",first_name:"doe"}];
var source =
{
datatype: "json",
datafields:
[
{ name: 'user_id', type: 'string' },
{ name: 'user_name', type: 'string' },
{ name: 'first_name', type: 'string' },
{ name: 'action'}
],
id: 'user_id',
root: 'Rows',
};
var dataAdapter = new $.jqx.dataAdapter(source);
// create jqxgrid.
$("#jqxgrid").jqxGrid(
{
width: 1000,
height: 450,
theme: 'light',
source: dataAdapter,
selectionmode: 'multiplerowsextended',
sortable: true,
pageable: true,
pageSize: 20,
autoHeight: true,
filterable: true,
pagesizeoptions: ['20', '40', '80','200'],
altrows: true,
columns: [
{ text: 'User ID', datafield: 'user_id', width: 100 },
{ text: 'User Name', datafield: 'title', width: 70, cellsformat: 'yyyy-MM-dd'},
{ text: 'First Name', datafield: 'first_name', width: 150, cellsformat: 'F2', cellsalign: 'left' },
{ text: 'Action', datafield: 'action',cellsrenderer: renderer,width:130 }
]
});
});
var renderer = function (action) {
return '<span style="padding:5px;" >'+'<a href="update_user?id=data.user_id" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i>Update user</a>'+'</span>';
}
</script>
能否请您尝试以下操作:
1) 修改列定义以在 datafield
属性中传递 user_id
为:
{ text: 'Action', datafield: 'user_id',cellsrenderer: renderer,width:130 }
2) 现在修改renderer
函数如下,直接得到user_id
:
var renderer = function (user_id) {
return '<span style="padding:5px;" >'+'<a href="update_user?id='+user_id+'" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i>Update user</a>'+'</span>';
}
这段代码对我来说效果很好。谢谢
{ text: 'Action', datafield: 'ac', cellsrenderer: renderer, width:105 }
var renderer = function (row, columnfield, value, defaulthtml, columnproperties) {
var getrow = row;
var user_data = $("#jqxgrid").jqxGrid('getrowdata', getrow);
var user_id = user_data.user_id;
return '<span style="padding:10px;">'+'<a href="update_user?id='+user_id+'" class="btn btn-default btn-xs" style="margin-top:3px;"><i class="fa fa-check-square-o"></i> Update user</a>'+'</span>';
}