jqgrid читает значение элемента формы и динамически изменяет опцию выбора - PullRequest
0 голосов
/ 12 декабря 2018

Мне нравится изменять раскрывающийся список Тип поля в зависимости от входных данных полей Год и Уровень.

enter image description here

Я могу вызватьсобытие, когда уровень меняется.Но как мне получить значение поля Year?

Часть кода выглядит следующим образом:

    colModel:[
    {name:'Year',index:'Year', width:70,sortable:false,editable:true,align:'center',editoptions:{size:15, maxlength:4}, formoptions:{ rowpos:1, label: "Year (*)"},editrules:{required:true}},
    {name:'Level',index:'Level', width:70,sortable:false,editable:true,align:'center',edittype: "select", editoptions: { value: '1:1;2:2;3:3;4:4;5:5;6:6', defaultValue:'1',  dataEvents : [
        {
            'type' : 'change',
            'fn' : function ( el ) {
                // get the newly selected value from the user
                var levelz = $(el.target).val(), yearz ;
                var row = $(el.target).closest('tr.jqgrow');
                var rowid = row.attr('id');

                //yearz = ??
                if (parseInt(levelz)==5 || parseInt(levelz)==6)
                {
                    if (parseInt(yearz)>2017)
                    {
                        $("#gridmain").jqGrid('setColProp','Term', {editoptions: { value: '1:Sem 1;4:Sem 2;6:EY;9:OVR', defaultValue:'Sem 1'}} );
                    }else{
                        $("#gridmain").jqGrid('setColProp','Term', {editoptions: { value: '', defaultValue:''}} );
                    }                       
                }else{
                    $("#gridmain").jqGrid('setColProp','Term', {editoptions: { value: '1:TA1/CT1;2:TA2-before 2013;3:MY/TA2/CT2;4:TA3/CT3;5:TA4-before 2013;6:EY/TA4/CT4;9:OVR;D:CW1;E:CW2;F:CW3;G:CW4', defaultValue:'TA1'}} );
                }
            }
        }]}, formoptions:{ rowpos:2, label: "Level (*)"},editrules:{required:true}},
    {name:'Term',index:'Term', width:70, sortable:false,editable: true,align:'center',edittype: "select", editoptions: { value: '1:TA1/CT1;2:TA2-before 2013;3:MY/TA2/CT2;4:TA3/CT3;5:TA4-before 2013;6:EY/TA4/CT4;9:OVR;D:CW1;E:CW2;F:CW3;G:CW4', defaultValue:'TA1'}, editrules: { required: true }, formoptions:{ rowpos:3, label: "Type"}},     

Коды взяты из того, что я прочитал из поиска Google ... Iсталкиваются с двумя проблемами: 1) я не знаю, как получить значение года 2) выпадающий список параметров не меняется.- хм, кажется, что если я закрою форму редактирования и открою снова, опция раскрывающегося списка Тип поля изменится.Что мне нужно, так это поменять опцию на лету - интересно, как это можно сделать ...

1 Ответ

0 голосов
/ 12 декабря 2018

После долгих поисков, мне удалось получить ответ из поста Олега, как показано здесь

Также из его примера я получил значение года: var yearz = $ ("# Year.FormElement ", form [0]). Val ();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...