- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在一个单元格中,使用键值对选择编辑类型,如下所示。
colModel: [
{name: 'Code', index: 'Code', width: '16%', editable: true, sortable: true },
{ name: 'ABC', index: 'ABC', width: '16%', editable: true, edittype: "select", editoptions: { value: "FE:FedEx;TN:TNT"} },
{ name: 'Emailid', index: 'Emailid', width: '16%', editable: true, sortable: true },
],
现在,在添加新行时,如果我为 ABC 列选择了 FedEx ,它会将 FE 发送到 EditURL 链接而不是 FedEX 所以我想使用 extraParam 将 FEDEX 发送到 EditURL。
所以请任何人告诉我如何实现它。
为此,我的代码如下
更新代码
var grid = jQuery("#list5").jqGrid({
url: '/home1/GetUserData',
datatype: "json",
mtype: "POST",
colNames: ['Code', 'LoginID', 'Emailid'],
colModel: [
{name: 'Code', index: 'Code', width: '16%', editable: true, sortable: true },
{ name: 'LoginID', index: 'LoginID', width: '16%', editable: true, sortable: true },
{ name: 'Emailid', index: 'Emailid', width: '16%', editable: true, edittype: "select", editoptions: { value: "FE:FedEx;TN:TNT"} },
],
rowNum: 10,
autowidth: true,
height: '100%',
rowList: 10,
pager: $("#pager2"),
editurl: "/home1/EditUserData",
onSelectRow: function (id) {
if (id && id !== lastsel2) {
if (id == "new_row") {
grid.setGridParam({ editurl: "/home1/InsertUserData" });
}
else {
grid.setGridParam({ editurl: "/home1/EditUserData" });
}
jQuery('#list5').restoreRow(lastsel2);
jQuery('#list5').jqGrid('editRow', id, true, pickdates);
$("#list5_ilsave").addClass("ui-state-disabled");
$("#list5_ilcancel").addClass("ui-state-disabled");
$("#list5_iladd").removeClass("ui-state-disabled");
$("#list5_iledit").removeClass("ui-state-disabled");
lastsel2 = id;
}
},
caption: "Simple data manipulation"
});
jQuery("#list5").jqGrid('navGrid', '#pager2', { edit: false, add: false, del: true, search: false, refresh: false }, {}, {}, { url: '/home1/DeleteUserData' });
jQuery('#list5').jqGrid('inlineNav', '#pager2', { edit: true, add: true, editParams: {extraparam: XYZ()}});
});
function XYZ()
{
// from here i want to return the text of combo of selected row.
}
更新Oleg的代码
var grid = jQuery("#list5"),
editingRowId,
myEditParam = {
keys: true,
oneditfunc: function (id) {
editingRowId = id;
},
afterrestorefunc: function (id) {
editingRowId = undefined;
},
extraparam:
// we get the text of selected option from the column
// 'Emailid' and include the data as additional
// parameter 'EmailidText'
// EmailidText: function () {
// return $("#" + editingRowId + "_Emailid>option:selected").text();
//}
// **my changes here bind ABC Function which return key , value pair of object** IS THIS POSSIBLE
function () {
ABC();
}
};
grid.jqGrid({
url: '/home1/GetUserData',
datatype: "json",
...
onSelectRow: function (id) {
var $this = $(this), gridIdSelector = '#' + $.jgrid.jqID(this.id);
$this.jqGrid('setGridParam', {
editurl: (id === "new_row" ?
"/home1/InsertUserData" :
"/home1/EditUserData")
});
if (editingRowId !== id) {
$(gridIdSelector + "_iledit").click();
}
}
});
$grid.jqGrid('navGrid', '#pager',
{ edit: false, add: false, search: false, refresh: false},
{}, {}, { url: '/home1/DeleteUserData' });
// inlineNav has restoreAfterSelect: true per default so we don't need to call
// restoreRow explicitly
$grid.jqGrid('inlineNav', '#pager',
{ edit: true, add: true, editParams: myEditParam,
addParams: {addRowParams: myEditParam } });
最佳答案
代码可能如下
var grid = jQuery("#list5"),
editingRowId,
myEditParam = {
keys: true,
oneditfunc: function (id) {
editingRowId = id;
},
afterrestorefunc: function (id) {
editingRowId = undefined;
},
extraparam: {
// we get the text of selected option from the column
// 'Emailid' and include the data as additional
// parameter 'EmailidText'
EmailidText: function () {
return $("#" + editingRowId + "_Emailid>option:selected").text();
}
}
};
grid.jqGrid({
url: '/home1/GetUserData',
datatype: "json",
...
onSelectRow: function (id) {
var $this = $(this), gridIdSelector = '#' + $.jgrid.jqID(this.id);
$this.jqGrid('setGridParam', {
editurl: (id === "new_row" ?
"/home1/InsertUserData" :
"/home1/EditUserData")
});
if (editingRowId !== id) {
$(gridIdSelector + "_iledit").click();
}
}
});
$grid.jqGrid('navGrid', '#pager',
{ edit: false, add: false, search: false, refresh: false},
{}, {}, { url: '/home1/DeleteUserData' });
// inlineNav has restoreAfterSelect: true per default so we don't need to call
// restoreRow explicitly
$grid.jqGrid('inlineNav', '#pager',
{ edit: true, add: true, editParams: myEditParam,
addParams: {addRowParams: myEditParam } });
关于jqgrid - 如何使用jqgrid saveRow的extraParam参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10394035/
我在模态窗口中有一个带有远程商店的组合。要获取数据,必须向商店发送一个额外的参数。此参数存储为窗口的属性。我怎样才能通过它? 这是我的 app.js 文件(我使用 MVC 模型,至少尝试使用它 :))
要求 每次对网格数据进行排序 - 在执行事件之前我想更改存储 extraParams使用新排序属性的值。就像如果我在 DESC 方向对列名称进行排序 - 在事件之前是 已执行 我想覆盖 extraPa
我有一个字符串: var str = "it's a beautiful day"; 我将这个字符串传递给函数: rowSave(id, str); 行保存() var rowSave = funct
我遇到了一个与 ExtraParams 的 ExtraParams 相关的问题。我需要将默认的参数分隔符 & 更改为自定义的 ;因为我正在访问的 Web 服务没有响应 &。 有没有办法改变分隔符? 最
我有以下商店: var store = new Ext.data.Store({ model: 'Result', proxy: { type: 'ajax',
我特指 Jörn Zaefferer 的 jQuery Autocomplete v1.1 插件 [来源:http://bassistance.de/jquery-plugins/jquery-plu
我有 2 个选择字段,其中包含通过 JSONP 代理从数据存储连接的选项。我需要根据第一个选择字段中选择的值更改第二个选择字段中的值。为此,我认为我应该根据选择字段中选择的值更改代理 extraPar
我在显示通过带有动态“extraParams”参数的 JSON 获取的事件时遇到问题,如 Docs 中所述: var calendarEl = document.getElementById('cal
我想将额外的过滤数据传递到我的 PHP REST 服务,即来自表单的一组值。表单是一组具有相同 name: 'relations' 的复选框。 为此,我执行以下操作: var relationType
我使用以下 jQuery 脚本发送“Make”参数来过滤我的“模型”: $(document).ready(function () { $(".autocomplete_make").autocomp
我有一个 ExtJs 商店。 var fieldsStore = new Ext.create('Ext.data.Store', { model : 'FieldsModel', proxy : {
我正在使用 ExtJS 5.0.1。我有一个不自动加载的网格。使用 TopBar 中的单击按钮手动加载商店后,网格将接收记录。我正在尝试在此网格上实现无限滚动。我的商店有额外的参数需要传递到后端才能获
我是一名优秀的程序员,十分优秀!