Jqgrid – 选择下拉列表的validation

我有这个列的下拉列表,目前当我从下拉列表中选择任何值时它会被保存,我想在保存之前从下拉列表中选择一个值时添加一个validation,例如,

{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"}} 

如果所选的值是PINK,我想要一个带有Save and Cancel按钮的validation提示,如下所示,Selected Value is:PINK,SAVE CANCEL

这是演示链接https://jsfiddle.net/kwu7v3fc/3/

请帮忙。

有许多方法可以实现您的要求。 在我看来,最原生的人会直接询问用户确认更改选择选项并实际保存之前 。 可以添加“更改”事件处理程序,它可以满足您的所有需求。 相应的实现将如下所示

 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); } } } } ] } 

查看修改后的演示https://jsfiddle.net/OlegKi/kwu7v3fc/5/