2

以下は私の行の一部です。コンボボックスの値が変更されたときに BudgetLineItemCode フィールドの値を変更する必要があります。

{ title: 'Index', field: 'RootLevel', width: 50, editor: { 'type': 'validatebox', 'options': { required: true}} },
            { field: 'PHeading', title: 'Heading', width: 240,
                formatter: function (value) {
                    for (var i = 0; i < CItems.length; i++) {

                        if (CItems[i].heading.toLowerCase() == value.toLowerCase()) {
                            return CItems[i].heading;
                    }
                    return value;
                },
                editor: {
                    type: 'combobox',
                    options: {
                        valueField: 'heading',
                        textField: 'heading',
                        data: CItems,
                        required: true
                        onSelect: function (record) {
                        var selrow = $('#trgrid').treegrid('getSelected');
                        var rowIndex = $('#trgrid').treegrid('find',row.BudgetDetailID)
                        var editors =$('#trgrid').treegrid('getEditors',selrow.BudgetDetailID);

                     var codeEditor = editors[2];

                     $(codeEditor.target).text('setValue', 'newval');

                    }
                }
            }{ title: 'Code', field: 'BudgetLineItemCode', width: 50, editor: { 'type': 'text'} }

また、もう一つ質問です。コンボボックスの onChange イベントはありません。これを乗り越える方法はありますか?つまり、ユーザーがコンボボックスに入力するときにコードをチェックしたいということです。

4

2 に答える 2

2

あなたができる最初の部分のために

$(codeEditor.target).val('newval');

validatebox のセッターは .val() なので、

ドキュメントはこちら..

そして2番目のeasyuiコンボボックスはデフォルトでそれを行います..または使用できますkeyhandler

editor: {
                type: 'combobox',
                options: {
                    valueField: 'heading',
                    textField: 'heading',
                    data: CItems,
                    required: true,
                    keyHandler: {
                    up: function(){},
                    down: function(){},
                    enter: function(){},
                    query: function(q){ console.log(q)} //<----here
                    },
                    onSelect: function (record) {
                    var selrow = $('#trgrid').treegrid('getSelected');
                    var rowIndex = $('#trgrid').treegrid('find',row.BudgetDetailID)
                    var editors =$('#trgrid').treegrid('getEditors',selrow.BudgetDetailID);

                 var codeEditor = editors[2];

                 $(codeEditor.target).text('setValue', 'newval');

                }
            }
于 2013-02-15T09:48:54.433 に答える
0

コード:

 onSelect: function(rec){
           var row = $('#tblCoursefaculty').datagrid('getSelected');
           var rowIndex = $('#tblCoursefaculty').datagrid('getRowIndex', row)
          var editors = $('#tblCoursefaculty').datagrid('getEditors', rowIndex);
              var ed_fc_co_section = editors[8];
                       $(ed_fc_co_section.target).val(rec.co_section);
                       var ed_fc_co_course_cr = editors[9];
                       $(ed_fc_co_course_cr.target).val(rec.co_course_cr);                              }                                                                      
 }               }">Course</th>
<th data-options="field:'fc_co_section',width:50,align:'left',editor:'text'">Section</th>
<th data-options="field:'fc_co_course_cr',width:50,align:'left',editor:'text'">Credit Hour</th>  
于 2016-04-29T06:02:31.620 に答える