在视图中,我有一个dropdownlist控件,我可以通过jQuery调用函数来填充该控件,并且DDL已正确填充,并且到目前为止没有问题。
但是当我将DDL值传递给控制器时,如果该值是字母和数字,则不会传递数字值。
查看:
<div class="form-group col-md-6">
<div class="col-md-10">
<select id="DDLMachintypeID" name="DDLMachintypeID" class="form-control"></select>
</div>
</div>
@section MyScripts
<script type="text/javascript">
$(function () {
$('#MachineID').change(function () {
var machineid = $(this).val();
$.ajax({
type: "post",
dataType: "json",
contentType: "application/json; charset=utf-8",
url: "FillTypes",
data: "{MachinKindId:'" + machineid + "'}",
success: function (data) {
$('#DDLMachintypeID').empty();
$.each(data, function (i, d) {
$('#DDLMachintypeID').append('<option selected="selected" value=' + d + '>' + d + '</option>');
});
},
failure: function (data) {
alert('error occured');
}
});
});
});
</script>
End Section
并在控制器中:
Dim strDDL = Request.Form("DDLMachintypeID")
例如,如果我的下拉列表的选定值为A3
,则在控制器中我得到A
!
仅将字母数字字符串传递给控制器。我阅读的strDDL
仅为A
,而应该为A3
。为什么?!
答案 0 :(得分:0)
问题解决了 本节以以下格式编辑了jQuery代码:
$.each(data, function (i, d ) {
$('#DDLMachintypeID').append('<option selected="selected" value="' + d + '">' + d + '</option>');
});