我正在使用 Ajax 来填充 DropDownList,当用户在这个 DropDownList 中选择一个项目时,我需要在另一个字段中显示一个日期,这个日期是 DropdownList 实体本身中存在的一个字段,添加所有 3 个字段从DropDownList 中的该实体(值/文本/日期)。我已经通过 Ajax 获取它们了。那么,有没有什么办法呢?如果不是,我想我会尝试添加一个额外的 DropDownList(隐藏)或类似的东西,但这个想法不是很好,因为我需要更新每个用户交互的额外控制。
编辑:添加 Ajax 调用和 DropDown 相关代码,我添加了 2 个字段值/文本,但我需要第三个:
function GetLote(_idProducto) {
$("#FechaVencimiento").val('');
var procemessage = "<option value='0'> Cargando...</option>";
$("#ddllote").html(procemessage).show();
var data = JSON.stringify({
idProducto: _idProducto
});
return $.ajax({
url: "/Deposito/GetLotesPorProducto",
data: data,
cache: false,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
type: 'POST',
success: function (data) {
var markup = "<option value='0'>Seleccionar..</option>";
for (var x = 0; x < data.length; x++) {
markup += "<option value=" + data[x].Value + ">" + data[x].Text + "</option>";
}
$("#ddllote").html(markup).show();
},
error: function (reponse) {
alert("error : " + reponse);
}
});
}
由于您想传递三个字段,即文本、值和日期,并且您正在使用 AJAX 和 jquery。您可以使用下拉菜单的其他属性,例如用于文本用户Text
、用于值使用Value
和用于您可能使用的日期innerText
。所以这将是这样的:
for (var x = 0; x < data.length; x++) {
markup += "<option value=" + data[x].Value + ">" + data[x].Text + "</option>";
}
$("#ddllote").html(markup).show()
for (var x = 0; x < data.length; x++) {
$('#ddllote')[x].innerText=data.Date
} //Here i have looped again to caputure the Date.
现在,无论您想在何处使用所选项目的日期,都可以通过使用innerText
所选项目来实现。
var DateinAnotherField= $('#ddlloteoption:selected').innerText;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句