javascript - Jqgrid - 选择下拉菜单的验证

标签 javascript jquery jqgrid

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

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

如果所选值是粉红色,我希望有一个带有保存和取消按钮的验证提示,如下所示,所选值是:粉红色,保存取消

这是演示链接 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/

关于javascript - Jqgrid - 选择下拉菜单的验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46939695/

相关文章:

php - 在 jQuery 中绑定(bind)事件的正确方法是什么?

javascript - 如何在jqgrid中将一个单元格分成2个?

javascript - jqgrid 防止 onSelectRow

javascript - 如何让导入的 css 字体/图标对 shadow dom 中的元素产生影响?

javascript php 内部服务器错误 500 随机

javascript - 如何使用 yAxisTickFromatting 在 ngx-Charts Bar 上垂直设置百分比 yAxis?

jquery - 在 td 内居中对齐 jquery ui-icon

javascript - 如何在 Angular 4+ 中添加/使用 lightGallery 插件?

javascript - 如何处理 Phonegap + JQM 应用程序中的链接?

javascript - 如果在某个时间间隔内没有获得 MouseOver,则使用 jQuery 自动隐藏 div