Javascript Jqgrid-选择下拉列表时的验证
我有这个带有下拉列表的列,当前当我从下拉列表中选择任何值并保存时,我想在保存前从下拉列表中选择值时添加验证,例如Javascript Jqgrid-选择下拉列表时的验证,javascript,jquery,jqgrid,Javascript,Jquery,Jqgrid,我有这个带有下拉列表的列,当前当我从下拉列表中选择任何值并保存时,我想在保存前从下拉列表中选择值时添加验证,例如 {name:'color_name', cellattr: function (rowid, cellValue) { if ($.inArray(cellValue, hilightcolorcell) < 0) { return " class='redcells'"; } },editable:true,edittype:"sele
{name:'color_name',
cellattr: function (rowid, cellValue) {
if ($.inArray(cellValue, hilightcolorcell) < 0) {
return " class='redcells'";
}
},editable:true,edittype:"select",editoptions:
{value:"PURPLE:PURPLE;PINK:PINK;GREEN:GREEN"}}
如果选择的值是粉红色的,我希望有一个带有保存和取消按钮的验证提示,类似这样,选择的值是:粉红色,保存取消
这是演示链接
请提供帮助。有许多方法可以实现您的需求。在我看来,最土生土长的人似乎会在更改select选项时直接请求用户确认,然后才真正保存它。您可以添加更改事件处理程序,它可以完成所有需要的操作。相应的实现如下例所示
editoptions: {
value: "PURPLE:PURPLE;PINK:PINK;GREEN:GREEN",
dataEvents: [
{
type: "change",
fn: function (e) {
if ($(this).val() === "PINK") {
if (!confirm("Are you sure you want PINK?")) {
// reset the value to the previous one
var savedRow = $("#rowed5").jqGrid("getGridParam", "savedRow");
$(this).val(savedRow[0].v);
}
}
}
}
]
}
查看修改后的演示谢谢,先生,有一个疑问,如果我们想显示实际单元格值和选定值,如何实现?例如,实际值为粉色,下拉选择的值为粉色,如何提示您确定要将粉色更改为粉色?@davidb:不客气!savedRow[0]。v是开始编辑之前单元格中的值。值$this.val是当前所选选项的值。您可以替换您确定要粉色吗?是否确实要将+savedRow[0].v+更改为+$this.val+?。您需要将$rowed5.jqGridgetGridParam,savedRow移到上面,以便在使用之前初始化savedRow。看见