我想知道JqGrid高级搜索是否可以为我想要搜索的某些字段显示多个文本框。 例如,如果我有一个“电话号码”字段,我希望能够显示2个方框,一个用于区号,另一个用于电话号码的其余部分。 然后在按下“查找”后,我希望能够获取这两个值并将它们合并或执行其他操作。
任何帮助将不胜感激,
谢谢,
fromano2802
答案 0 :(得分:2)
你有一个有趣的问题,但我建议你输入更好的电话号码和用户友好。有一个很好的jQuery“Masked Input”插件。它允许您在输入字段中显示一个掩码,例如“( _)_ -____”并且只允许输入数字。要查看生活我的意思打开页面http://digitalbush.com/projects/masked-input-plugin/#demo,将焦点设置到“电话”字段并尝试键入内容。这不好!
要在JqGrid高级搜索对话框中执行此操作,您应该执行以下操作
在colModel
搜索栏中添加“电话号码”列的定义,如下所示
{name:'PhoneNumber',width:83,index:'PhoneNumber',align:'center', searchoptions:{ dataInit:function(elem){ $(elem).mask(“(999)999-9999”); } } }
一切都好。现在只需打开“高级搜索对话框”,选择“电话号码”字段并在输入字段中设置焦点。 http://www.trirand.com/jqgridwiki/doku.php?id=wiki:search_config&s[]=datainita和http://www.trirand.com/jqgridwiki/doku.php?id=wiki:common_rules&s[]=datainit下的jqGrid文档中描述的函数dataInit
。
顺便说一句,您可以在数据编辑期间(包括表单编辑和内联编辑)接收相同的屏蔽输入。只需定义与editoption
s相同的searchoption
:
{ name: 'PhoneNumber', width: 83, index: 'PhoneNumber', align: 'center',
editoptions: {
dataInit: function (elem) {
$(elem).mask("(999) 999-9999");
}
},
searchoptions: {
dataInit: function (elem) {
$(elem).mask("(999) 999-9999");
}
}
}