我有一个jqgrid,它非常适合显示,分页,排序,添加和编辑数据。我需要在提交之前在添加/编辑模式对话框中的特定字段上添加自定义验证。我为此实现了beforeCheckValues事件并且它工作正常,但是我不确定如何从编辑对话框中获取值 - 我该怎么做?我正在研究“getRowData”,但我不相信会深入到模态编辑对话框中的内容。我的添加/编辑对话框有更多的字段,常规网格,一切都被拉回,它只是隐藏,直到编辑时。
jqgrid定义片段:
{
name: 'SecurityControlNumber', jsonmap: 'SecurityControlNumber', index: 'SecurityControlNumber', width: 150, editable: true, hidden: true,
editrules:
{
edithidden: true, required: true
},
formoptions:
{
elmsuffix: ' *'
},
hidedlg: true
},
beforeCheckValues事件:
beforeCheckValues: function (postdata, formid, mode) {
var options = {
type: 'GET',
async: false,
url: "@Url.Action("CheckSecurityControlNumber")",
data: { securityControlNumber: $('#gridDetail').jqgrid('getRowData') }, // <-- need to get field in modal here
dataType: 'json',
context: $(this),
success: function (data, textStatus, jqXHR) {
alert(data.returnvalue);
alert('made it to ajax call');
},
error: function (jqXHR, textStatus, errorThrown) {
alert('Something happened... Error is.. : ' + errorThrown);
},
};
$.ajax(options);
答案 0 :(得分:1)
如果我理解你正确的话,那就是你想要的(如果数据在弹出窗口中)
data: { securityControlNumber: $('input#SecurityControlNumber').val() },//for text input
data: { securityControlNumber: $('select#SecurityControlNumber option:selected').val() },//for dropdown