0
我需要使用jqgrid加载依赖的下拉列表。这里是我的代码部分(我使用MVC)从属下拉列表jqgrid
{ name: 'parIDUnidadMedida', index: 'parIDUnidadMedida', width: 80, align: 'center', editable: true, edittype: "select",
editrules: { required: true },
editoptions: {
multiple: false,
size: 1,
dataUrl: '@Url.Content("~/")' + 'CertificadoGarantiaExtendidaOpciones/ListarUnidadesMedida/',
buildSelect: function (data) {
var response = jQuery.parseJSON(data);
var s = '<select>';
if (response && response.length) {
for (var i = 0, l = response.length; i < l; i++) {
var ri = response[i];
s += '<option value="' + ri.Value + '">' + ri.Text + '</option>';
}
}
return s + "</select>";
},
dataEvents: [{
type: 'change',
fn: function (e) {
var varIDUnidadMedida = e.currentTarget.value;
newOptions = '';
var arrPlazos = $.ajax({
url: '@Url.Content("~/")' + 'CertificadoGarantiaExtendidaOpciones/ListarPlazos/' + varIDUnidadMedida,
async: false
}).responseText;
var response = jQuery.parseJSON(arrPlazos);
for (var i = 0; i < response.length; i++) {
newOptions += '<option value="' + response[i].Value + '">' + response[i].Text + '</option>';
}
$('parPlazo').html(newOptions);
}
}]
}
},
{ name: 'parPlazo', index: 'parPlazo', width: 80, align: 'center', editable: true, edittype: "select",
editrules: { required: true },
editoptions: {
multiple: false,
size: 1
}
},
正如你可以看到,如果parIDUnidadMedida选择控制的变化则parPlazo必须更新...
你能帮助我吗?我不知道如何解决它。
问候。
本LIK帮我.... http://www.trirand.net/aspnetmvc/grid/editdialogdependentdropdowns –
我发现别的做..... 更换(添加新代码行) jQuery(“select#”+ rowId +“_parPlazo”)。append(plazosHtml); (“select#”+ rowId +“_parPlazo> option”)。remove(plazosHtml);}} jQuery(“select#”+ rowId +“_parPlazo”)。append(plazosHtml); –