我似乎在将我的Kendo Multiselect小部件中的选定值发布到控制器上的操作时遇到问题。我以前从来没有遇到过这个问题,据我所知,我做的一切都是正确的,但显然会出现问题。
我在观点上有这样的输入:
<input id="ProductHandlingTypes" name="ProductHandlingTypes" style="width: 100%"/>
我的ViewModel
public class BuyerProfileViewModel
{
public string UserId { get; set; }
public string Name { get; set; }
public int BuyerTypeId { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zipcode { get; set; }
public string Description { get; set; }
public List<int> ProductHandlingTypes { get; set; }
public bool Producer { get; set; }
}
我的JavaScript:
$("#ProductHandlingTypes").kendoMultiSelect({
placeholder: "-- Select Type(s) --",
dataTextField: "Name",
dataValueField: "Id",
dataSource: new kendo.data.DataSource({
transport: {
read: {
url: "/Helper/GetProductHandlingTypes",
dataType: "json",
type: "GET"
}
}
})
});
$("#btnSave").on("click", function (e) {
e.preventDefault();
var formCreate = $(".form-register-buyer");
formCreate.validate();
if (formCreate.valid()) {
var options = {
url: $(formCreate).attr("action"),
type: $(formCreate).attr("method"),
data: $(formCreate).serialize()
};
$.ajax(options)
.done(function(data) {
if (data.success === true) {
window.location.href = data.redirectTo;
} else {
toastr.options = { "postiionClass": "toast-bottom-full-width" };
toastr.error(data.message, "Uh, Oh!");
}
});
}
});
当我将表单提交给控制器时,我可以看到除ProductHandlingTypes
之外的所有正确值都被传递。它只是表示它的计数为1,当我将其展开时它表示为0。