在自定义编辑类型字段中添加多个输入元素

gur*_*un8 5 editing jqgrid

有没有办法创建具有多个输入元素的自定义字段?我正在查阅文档并创建单个输入元素非常简单,但我不确定如何添加多个.

有没有人过这个桥?如果是这样,你是怎么做到的?

这是一些示例代码:

...
{name: 'Dimensions', index: 'Dimensions', hidden: true, editable: true, 
edittype: 'custom', editoptions: {custom_element: dimensionsElement, 
custom_value: dimensionsValue}, editrules: {edithidden: true}},
...


function dimensionsElement(value, options) {
    var el = document.createElement("input");
    el.type = "text";
    el.value = value;
    return el;
}

function dimensionsValue(elem) {
    return $(elem).val();
}
Run Code Online (Sandbox Code Playgroud)

Ole*_*leg 11

您可以使用jQuery创建多个输入元素.因此,如果您的字段是例如人名,您可以使用以下内容

{ name: 'FullName', editable: true, edittype: 'custom', width: 300,
  editoptions: {
      custom_element: function(value, options) {
          // split full name to the first and last name
          var parts = value.split(' ');
          // create a string with subelements
          var elemStr = '<div><input id="'+options.id +
                        '_first" size="10" value="' + parts[0] +
                        '" /></br><input id="'+options.id + '_last' +
                        '"size="20" value="' + parts[1] + '" /></div>';
          // return DOM element from jQuery object
          return $(elemStr)[0];
      },
      custom_value: function(elem) {
          var inputs = $("input", $(elem)[0]);
          var first = inputs[0].value;
          var last = inputs[1].value;
          return first + ' '+ last;
      }
  }},
Run Code Online (Sandbox Code Playgroud)

它是原始代码片段,你应该改进input元素的布局(size例如属性的值).它显示了构建自定义编辑元素的主要概念.

更新:如果您使用自定义编辑,使用参数很重要recreateForm: true(请参阅http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing).请参阅jqgrid - 设置edittype的custom_value:'custom'以获取详细信息.